본문 바로가기
Backend/Python

[Python] 표준 입출력

by Dev_Mook 2022. 5. 23.

처음 프로그래밍 언어를 배우면 무엇부터 할까요?

아마 내가 작성한 글자와 키보드를 통해 입력한 글자를 컴퓨터 화면에 출력해 볼거에요.

그럼 파이썬은 어떻게 화면에 출력을 하는지, 키보드 입력을 어떻게 받는지 알아야겠죠?

 

이번 과정을 통해 파이썬의 입력(표준 입력)과 출력(표준 출력)은 어떻게 만들수 있는지,

그리고 입출력의 다양한 사용법에 대해 알아보도록 해요.

 

표준 출력 - print()

 

print() 함수는 파이썬의 표준 출력 함수에요.

괄호 안에 있는 글자나 숫자, 계산식을 화면에 출력준답니다.

 

먼저 아래 예제를 통해 어떻게 사용하는지 알아볼까요?

# 역시 프로그래밍의 시작은 Hello World죠.
# 아래와 같이 화면에 Hello World를 출력할 수 있도록 작성해볼까요?
# 참고로 지금처럼 '#'을 이용하면 작성된 코드가 무슨 역할을 하는지 설명하는 주석을 달 수 있어요.
print('Hello World')
>>> Hello World

# 그 다음은 숫자를 출력해볼까요?
print(100)
>>> 100

# 아래와 같이 계산식도 출력할 수 있답니다.
print(1+2)
>>> 3

# 그리고 문자열은 작은따옴표(')나 큰따옴표(")를 이용하여 작성할 수 있습니다.
print('안녕하세요.')
print("반갑습니다.")
>>> 안녕하세요.
>>> 반갑습니다.

# 참고로 콤마(,)를 이용하면 데이터 사이에 띄어쓰기를 자동으로 작성해줘요.
# 이 부분도 소스코드를 작성하다보면 많이 사용되니 알아두면 좋겠죠?
print('저는', 1993, '년생입니다.')
>>> 저는 1993 년생입니다.

# 마지막으로 큰따옴표(")를 이용해서 아래와 같이 작성하면
# '+ 연산자'와 같은 효과를 줄 수 있으니 참고하세요.
print("이렇게" "문자를" "작성하면" "글자가 모두" "붙어서 작성되요.")
>>> 이렇게문자를작성하면글자가 모두붙어서 작성되요.

 

이렇듯 파이썬은 입력된 값의 형태에 상관없이 모두 화면에 출력해줘요.

입력된 값의 형태에 대해서는 자료형과 변수(with. 타입체크와 형변환) 파트를 통해 알아보도록 해요.

 

표준 출력 - input()

 

input은 키보드로 입력한 값을 받는 함수에요

다만, Python의 표준 입력은 데이터를 문자열로만 받아요.

만약 정수형, 실수형, 논리형, 배열 등 다른 형태의 데이터를 입력 데이터로 사용하고 싶으면

자료형과 변수(with. 타입체크와 형변환) 파트를 참고하면 돼요.

 

물론 예제 코드에서도 간단하게 다뤄볼게요.

# 그럼 첫 번째로 입력한 값을 화면에 출력하도록 해볼까요?
# 아래 코드와 같이 키보드를 통해 '안녕하세요'를 작성하고 Enter를 누르면
# 출력 기능을 통해 화면에 그대로 출력이 되는 것을 알 수 있어요.
myData1 = input()
print(myData1)
>>> (입력) 안녕하세요
>>> (출력) 안녕하세요

 

그런데 소스코드를 실행했을 때 여러분들은 '어디에 입력을 하라는거야?', '뭐를 입력하라는 거야?'

이런 생각이 들거에요. (물론 아닌 사람도 있겠죠.)

 

그럼 여러분을이 어디에, 어떤 데이터를 입력해야하는지 안내를 받으면 조금 더 사용하기 쉽겠죠?

이러한 문제를 해결하기 위해 메시지를 출력하는 Prompt 기능이 있어요.

아래 코드와 같이 작성을 하면 누구나 쉽게 입력할 수 있도록 안내받을 수 있을거에요.

 

그럼 예제 코드를 작성해볼까요?

myData2 = input('화면에 출력할 글자를 입력해주세요 : ')
print(myData2)
>>> (입력) 화면에 출력할 글자를 입력해 주세요 : Hello!!
>>> (출력) Hello!!

 

이렇게 작성하면 조금 더 입력을 어디에 어떻게 해야되는지 알기 쉽겠죠?

Prompt 기능을 이용해 숫자만 입력을 받을지, 숫자와 문자를 입력받을지 안내해준다면

모든 사람들이 사용하기 좋은 코드를 작성할 수 있어요.

 

하지만 파이썬의 입력에는 또 다른 문제가 있어요.

바로 앞서 말한 것과 같이 모든 입력문자로만 인식하는데요.

 

다음 예제를 통해 해결할 수 있어요.

# 방법 1
# 출력할 때 숫자로 인식하도록 형태를 변경하는 방법이에요.
# myData3을 여러 코드에서 사용하게 된다면 매번 형태를 변경해줘야되서 불편하겠죠?
myData3 = input("숫자를 입력해주세요 : ")
print(int(myData3))

# 방법 2
# 이번에는 입력을 받을 때 형태를 변경하는 방법이에요.
# 처음부터 입력받은 값을 숫자 형태로 변경했기 때문에
# 다른 코드에서는 첫 번째 방법과 같이 매번 변경해줄 필요는 없어요.
# 아래 작성된 코드와 같이 많이 사용하니까 꼭 알아두세요!
myData4 = int(input("숫자를 입력해주세요 : "))
print(myData4)

 

지금처럼 글자(문자열)을 숫자로 바꾸는 것을 형변환이라고 해요.

자료형과 변수(with. 타입체크와 형변환) 파트를 통해 형변환에 대해 자세히 알아보도록 해요.

'Backend > Python' 카테고리의 다른 글

[Python] 문자열 포매팅  (0) 2022.05.23
[Python] 문자열 연산  (0) 2022.05.23
[Python] 문자열 자료형  (0) 2022.05.23
[Python] 숫자 자료형  (0) 2022.05.23
[Python] 자료형과 변수(with. 타입체크와 형변환)  (0) 2022.05.23