2016-12-27 8 views
1

나는 최근에 이상한 것을 발견했다. 내가 뭔가를 입력했습니다일부 내장 기능의 구문 오류 메시지가 다른 이유는 무엇입니까?

exec code 

그리고 분명히 오류가 발생했습니다. 흥미로운 점은 오류 설명 - SyntaxError: Missing parentheses in call to 'exec'입니다. 비슷한 세부 묘사를 제공하는 다른 기능을 찾지 못했습니다. 예를 들면

eval code 

나는 SyntaxError: invalid syntax이됩니다. 모든 사용자 정의 함수와 발견 된 모든 내장 함수, 예를 들어. 지. min, filter은 동일하게 동작합니다.

왜 이러한 오류 메시지가 일치하지 않습니까? exec code 이후

답변

1

파이썬 2의 유효한 구문하지만 파이썬 3에서,이 오류 메시지는보다 상세한보다는 일반적인 SyntaxError 매우 인기 (이며) 때문에 (물론, exec의 사용으로 인기) 때 하나는 파이썬 2에서 파이썬 3

으로 전환됩니다 (string는 물론 정의되는 한) 파이썬 3 print string하려고 할 때 정확한 오류가 발생합니다.

+0

오, 나는 그것에 대해 생각하지 않았습니다. 나는 파이썬 2에서'exec'가 키워드라는 것을 알지 못했습니다 ... –