티스토리 뷰

반응형

Python에서 사용자의 입력을 받는 방법이 두 가지가 있습니다.


input() 함수를 이용한 방법과 raw_input()을 이용한 방법으로 두 함수는 사용자 입력을 어떻게 받아들이냐의 차이입니다.


예제를 통해 두 가지 방법의 차이점을 알아보겠습니다.


input()의 경우 정수형으로 입력을 받습니다.


>>> a = input()

1234

>>> a

1234

>>> print a

1234


raw_input()의 경우 문자열로 입력을 받습니다.

>>> a = raw_input()

1234

>>> a

'1234'

>>> print a

1234


   


위의 경우 변수 a를 출력했을 때 '' 의 차이를 보고 정수형인지 문자열인지 알 수 있습니다.


a = input()을 했을 경우 '' 없이 asdf라고 입력을 하면 문법 에러가 발생하며 ''로 묶어 문자열임을 나타내야 에러 없이 사용할 수 있습니다.


즉, input은 eval(raw_input())을 한것과 같은 효과이기 때문에 단순히 asdf를 입력한다던가 공백을 전달할 경우 eval()의 문법에 맞지 않기 때문에 에러가 발생하게 됩니다.


반대로 raw_input()의 경우 공백 입력 시 그대로 공백을 출력해주는 것으로 input()와 raw_input()의 차이점을 알 수 있습니다. = )







반응형

'Development' 카테고리의 다른 글

파이썬 따옴표의 차이(Python "", '')  (1446) 2013.08.15
파이썬 개행문자 제거(Python rstrip)  (1079) 2013.08.15
Python password 입력받기  (1080) 2013.08.13
유용한 파이썬 팁과 코드 조각  (1337) 2013.08.12
Python print end=' ' parameter  (2085) 2013.08.12
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함
300x250