if문에서는 숫자형도 '' <-를 붙여줘야 하는 이유?
287
작성한 질문수 7
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' 라고 코드를 짜놔야 하는지,
왜 그런건지 궁금합니다.
답변 1
1
안녕하세요.
input() 함수는 사용자로부터 입력받은 것을 문자열로 인식하기 때문입니다.
따라서 사용자로부터 숫자형을 입력받기 위해서는 앞에 int로 캐스팅을 해주어야합니다.
pwd = int(input('숫자를 입력하세요: '))
if pwd == 1212
print('hi kim')
실행이 안 되는데요.
0
4
0
print 문법 실행 안 돼요.
0
5
1
영문 계정
0
9
1
맥북에서 아이패드로 연결해서 보려고 하면 화면이 안뜹니다.
0
9
1
인스턴스 변수 문의
0
56
1
챕터 03_04 (튜플) 교육자료
0
56
2
Package(3-1) Sub 폴더 자료
0
48
1
아톰 출력 안됨
0
85
2
강의자료 메일 발송 요청 드립니다.
0
91
1
강의자료 메일로 보내주실 수 있으실까요?
1
59
0
Iterable 요소는 리스트로 작성해야하는 것 맞나요?
1
83
2
강의자료 부탁드립니다
0
76
2
if Flase: print('Bad')
0
76
1
=와 == 의 차이
0
93
1
functions 함수 섭들을려고하는데요
0
74
1
강의자료 부타드리겠습니다!
0
62
0
VSCODE에 VIEW에서 SELECTED INTERPRETER조회가 안됩니다.
0
71
1
강의자료 부탁드립니다.
0
59
0
dict의 Key를 바꾸는 방법
0
83
1
강의자료부탁드립니다
0
72
1
run withount 디버깅 및 F5+ctrl이 안먹혀요
0
69
1
강의 자료와 예정 다운로드
0
80
2
객체지향 vs 함수형
0
66
1
어렵네요 설정도
0
98
1





