2011-05-14 3 views
0

을 추적 :파이썬, 어디 선가 정의되지 않은 변수가 정의되지 않은 변수를 내 프로그램에서

나는 변수가 사용되는 줄 번호를 꺼내 수있는 방법
global name 'cmd' is not defined 

?

어디서 오류인지 알고 있습니다 (cmd 대 self.cmd). 문제는 줄 번호를 얻는 방법 (또는 왜 보이지 않는지)입니다.

내가 오류를 잡기 이후

, 나는 줄 번호

+1

ctrl + f 또는 사용중인 편집기에 해당하는 편집기를 사용하여 편집기에서 간단히 검색 할 수 있습니까? 그것이 정의되지 않았다는 것을 알려주는 경우에는 코드에 너무 많은 어커런스가 없을 것입니다. – wilbbe01

답변

4

프로그램을 어디에서 실행하고 있습니까? 파이썬 스택 추적은 보통 다음과 같습니다 :

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
NameError: name 'cmd' is not defined 

여기서 알 수 있듯이 오류가 발생한 행을 나타냅니다.

+0

흠, 알았어, 나는 예외를 제외하고, e : print e를했다. 왜 전체 스택 트레이스를 인쇄하지 않습니까? – Anycorn

0

이름을 사용하려고 줄 번호를 포함 제기되고이 나가서 설명하자면 NameError 결과로 역 추적을 얻을 수 traceback.print_exc()했다. 이 특별한 경우에는 'cmd'모듈을 가져 오는 것을 잊어 버린 것 같지만 표준 라이브러리 모듈의 이름을 부르는 이름의 변수가있을 수도 있습니다.

+0

나는 cmd 변수를 가지고있다. – Anycorn