Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 키보드 입력 읽는 방법: raw_input과 input 함수 완벽 정리

파이썬은 표준 입력(기본적으로 키보드)으로부터 한 줄의 텍스트를 읽어들이기 위해 두 가지 내장 함수를 제공합니다.

  • raw_input
  • input

raw_input 함수

raw_input([prompt]) 함수는 표준 입력에서 한 줄을 읽어 문자열 형태로 반환합니다. 이때 끝에 붙은 줄바꿈 문자(newline)는 자동으로 제거됩니다.

#!/usr/bin/python
str = raw_input("Enter your input: ")
print "Received input is : ", str

이 코드를 실행하면 사용자에게 문자열 입력을 요청하는 프롬프트가 나타나고, 입력한 문자열이 그대로 화면에 출력됩니다. "Hello Python!"을 입력했을 때의 출력 결과는 다음과 같습니다.

Enter your input: Hello Python
Received input is : Hello Python

input 함수

input([prompt]) 함수는 raw_input과 기본 동작은 같지만, 입력된 값을 유효한 파이썬 표현식으로 간주하고 그 평가(evaluation) 결과를 반환한다는 점에서 차이가 있습니다.

#!/usr/bin/python
str = input("Enter your input: ")
print "Received input is : ", str

예를 들어 리스트 컴프리헨션 같은 표현식을 입력하면, 문자열이 아닌 평가된 결과가 출력됩니다.

Enter your input: [x*5 for x in range(2,10,2)]
Recieved input is : [10, 20, 30, 40]

참고: 파이썬 2와 파이썬 3의 차이

위의 두 함수는 파이썬 2에서 사용되던 방식입니다. 파이썬 3에서는 raw_input()이 제거되고 input()만 남았으며, 이 input()은 입력값을 항상 문자열로 반환합니다. 따라서 숫자 연산이 필요한 경우 int()나 float() 등으로 명시적인 형 변환을 해야 합니다.

# Python 3 예제
name = input("이름을 입력하세요: ")
age = int(input("나이를 입력하세요: "))
print(f"{name}님의 나이는 {age}살입니다.")

이처럼 파이썬 버전에 따라 입력 처리 방식이 다르므로, 프로젝트에서 사용하는 파이썬 버전을 반드시 확인하고 적절한 함수를 사용하는 것이 중요합니다.