if문에서는 숫자형도 '' <-를 붙여줘야 하는 이유?
289
7 asked
pwd = input('pwd?')
if pwd == 1212:
print('hi kim')
위와같은 if문을 idle에서 실행시켜봤은데 에러가 뜨더라구요.
pwd? 라고 물었을 때 1212라고 입력하면 hi kim이 출력되도록 하고싶었습니다.
왜그런지 알아보니,
if pwd == 1212: 라고 코드를 작성하면 에러가 나고
if pwd == '1212': 라고 해야 에러가 안나더라구요
숫자는 ''없이 그냥 쓸 수 있는걸로 생각하고있었는데
(예를들어 변수를 할당할 때도 a = '1212' 라고 하지 않고 a = 1212 라고 그냥 쓰잖아요?)
if문에서의 숫자는 ''를 붙여야 실행이 되어서 조금 의아했습니다.
위 코드같은 경우에도 pwd? 를 물어봤을 때 1212라고 입력할 것이고, 그 것은 str형태가 아닌 int형을 입력하는 건데
어쨰서 str형이 되는 '1212' 라고 코드를 짜놔야 하는지,
왜 그런건지 궁금합니다.
Answer 1
1
안녕하세요.
input() 함수는 사용자로부터 입력받은 것을 문자열로 인식하기 때문입니다.
따라서 사용자로부터 숫자형을 입력받기 위해서는 앞에 int로 캐스팅을 해주어야합니다.
pwd = int(input('숫자를 입력하세요: '))
if pwd == 1212
print('hi kim')
54강 4분 41초에서 질문 있어요.
0
15
1
import
0
15
1
45강 예제4번에서 질문 있어요!
0
26
1
45강 강의 10분 03초 내용에서 x + 1 을 하는 이유는 뭔가요?
0
19
1
3강, 7강 화면이 안나옵니다. 그냥 검은화면으로만 노출되요;;
0
24
1
41강 1분 39초 영상에서 import test_module이 조회 안 돼요.
0
32
1
29강 while(3-1) 5분 20초 강의 영상 질문
0
36
0
pcskjs@naver.com
0
44
1
인터프리터 설정이 안됩니다.
0
49
1
Python formatter 설치
0
33
1
자료 다운로드 위치 확인 부탁드립니다.
0
37
2
보라색 예약어
0
29
1
#을 붙이는 이유
0
30
1
실행이 안 되는데요.
0
28
1
print 문법 실행 안 돼요.
0
32
1
영문 계정
0
28
1
맥북에서 아이패드로 연결해서 보려고 하면 화면이 안뜹니다.
0
25
1
인스턴스 변수 문의
0
67
1
챕터 03_04 (튜플) 교육자료
0
74
2
Package(3-1) Sub 폴더 자료
0
59
1
아톰 출력 안됨
0
101
2
강의자료 메일 발송 요청 드립니다.
0
110
1
강의자료 메일로 보내주실 수 있으실까요?
1
67
0
Iterable 요소는 리스트로 작성해야하는 것 맞나요?
1
93
2

