2020년 6월 27일 토요일

파이썬의 input()을 사용한 입력방법

다른 프로그래밍 언어와 마찬가지로 파이썬에서 키보드를 통해 어떤 숫자나 문자열을 입력받을 수 있습니다. 그때 사용하는 구문이 "input()"입니다. Input()내에 입력할 때 의미를 잘 알 수 있도록 여러가지 문장도 추가가능합니다.

아래 소스가 input()을 활용한 소스 코드입니다.

a = input('점수를 입력하세요 : ')
print ("입력한 점수는 ", a, " 입니다")

if a < 100:
    print ("입력한 점수는 100보다 작다 : ", a)
elif a > 100:
   print ("입력한 점수는 100보다 크다 : ", a)
else:
   print ("입력한 점수는 100과 같습니다 : ", a)

그런데 위의 소스를 실행하면 아래와 같이 에러가 발생됩니다.

점수를 입력하세요 : 100
입력한 점수는  100  입니다
Traceback (most recent call last):
  File "test.py", line 11, in <module>
    if a < 100:
TypeError: '<' not supported between instances of 'str' and 'int'

그 이유는 파이썬의 input()로 입력받은 결과값은 문자열 형태이기 때문입니다. C언어에서도 숫자나 문자열을 입력받는 방법이 조금 다르죠. 그 해결방법은 입력받은 문자열을 필요한 다른 데이터 타입으로 변환시켜야 합니다.

다음의 소스를 보시면 input()int()를 사용해서 문자열을 정수로 변환시킵니다. 만약 실수형으로 변환하려면 float()를 사용하면 됩니다.

a = int( input('점수를 입력하세요 : ') )
print ("입력한 점수는 ", a, " 입니다")

if a < 100:
    print ("입력한 점수는 100보다 작다 : ", a)
elif a > 100:
   print ("입력한 점수는 100보다 크다 : ", a)
else:
   print ("입력한 점수는 100과 같습니다 : ", a)

위의 소스를 실행하면 아래와 같이 제대로 실행됨을 알 수 있습니다.

점수를 입력하세요 : 100
입력한 점수는  100  입니다
입력한 점수는 100과 같습니다 :  100


댓글 없음:

댓글 쓰기