파이썬에서 함수 안에 if 조건문 썼을 때 돌아가지 않는 이유...
조회수 2503회
위 코드는 잘 돌아갑니다.
여기서 choice==1
을 했을 때
손님이 검색하려는 영화 제목이 movie 딕셔너리 안에 key값이 아닐 때
print('해당 영화는 없습니다.')
기능을 추가하고 싶습니다.
그래서 위처럼 쓰면 빨간색 저 부분에서는 invalid syntax
가 뜨고 제대로 돌아가질 않습니다. 닥터스트레인지로 붙여쓰면 함수가 search==input('')
부분까지만 출력되고 그 뒷 부분은 출력되지 않습니다.
- 대체 뭐가 문제일까요?
- 파이썬 함수에서는 if 조건문을 쓰면 안되는 건가요?
- 저 기능을 추가하려면 코딩을 대체 어떻게 해야 하는 걸까요?
참고로 저는 이번에 컴퓨터공학과에 입학하게 되어서 파이썬을 처음 배우는 중이에요!
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
- 에러 메시지에서 어디에서 문제가 발생했는지, 어떤 에러가 발생했는지를 잘 읽어보아야 합니다. 문제가 해결되었을 때, 그냥 넘아가지 말고, 이전에 문제 상황일 때 나왔던 에러 메시지가 왜 나왔는지 이해하는 것이 중요합니다.
search==닥터 스트레인지
에서 신택스 에러가 발생한 것입니다. 따옴표로 감싸진"닥터 스트레인지"
은 문자열이지만, 따옴표가 없으면, 인터프리터는 변수나 함수 이름으로 해석하려 합니다.닥터
라는 이름의 변수, 함수가 없고, 또, 변수와 함수이름 등을 그냥 빈칸으로 띄어 이어쓰는 문법은 없기 때문에 신택스에러가 발생한 것일 겁니다.- 파이썬 함수에서 if 조건문 써도 됩니다.
search in movie
또는search in movie.keys()
로 하면 아마 될 겁니다.
댓글 입력