프로그래밍 시 사용자로부터 데이터를 입력받는 능력은 매우 중요한 기능입니다. 파이썬은 간단한 내장 함수인 input()을 제공하여 프로그램이 일시 정지되고 사용자가 텍스트를 입력할 때까지 기다리게 합니다. 이 글에서는 input() 함수의 기본 사용법과 함께 다양한 시나리오에서의 활용 방법을 설명합니다.
기본 문법 및 사용 예시
input() 함수는 하나의 매개변수인 prompt를 선택적으로 받아들입니다. 이 값은 사용자에게 보여질 메시지로, 입력을 유도하는 역할을 합니다. 만약 매개변수를 생략하면 빈 문자열이 출력됩니다.
username = input("사용자 이름을 입력하세요: ")
print(f"환영합니다, {username}!")
데이터 타입 변환
모든 입력은 기본적으로 문자열 형식으로 처리됩니다. 따라서 정수나 실수 값을 얻고 싶다면 명시적인 타입 변환이 필요합니다.
score = int(input("점수를 입력하세요: "))
temperature = float(input("온도를 입력하세요 (섭씨): "))
print(f"점수: {score}, 온도: {temperature}°C")
여러 번의 입력 처리
여러 개의 입력을 순차적으로 받는 경우, 여러 번 input()을 호출하면 됩니다.
first = input("이름을 입력하세요: ")
last = input("성씨를 입력하세요: ")
print(f"안녕하세요, {first} {last}님!")
조건 분기와 상호작용
사용자의 입력에 따라 다른 동작을 수행하는 간단한 대화형 프로그램을 만들 수 있습니다.
response = input("파이썬을 좋아하시나요? (예/아니요): ")
if response.strip().lower() == "예":
print("정말 멋진 선택이에요!")
elif response.strip().lower() == "아니요":
print("다른 취미도 좋습니다.")
else:
print("예 또는 아니요로 답해주세요.")
예외 처리: 잘못된 입력 방지
사용자가 숫자가 아닌 값을 입력하면 int() 또는 float()에서 오류가 발생할 수 있습니다. 이를 방지하기 위해 try-except 구문을 사용합니다.
while True:
try:
age = int(input("나이를 입력하세요: "))
break
except ValueError:
print("올바른 숫자를 입력해 주세요.")
print(f"당신의 나이는 {age}세입니다.")
input() 함수는 단순한 텍스트 입력을 넘어서, 사용자 중심의 애플리케이션을 구현하는 데 핵심적인 역할을 합니다. 적절한 타입 변환과 오류 처리를 통해 안정적이고 사용자 친화적인 코드를 작성할 수 있습니다.