더북(TheBook)

20.2.3 프로그램 실행 도중에 예외가 발생한다

런타임 도중에 문제가 발생했다면 파이썬은 예외의 이름, 문제가 발생한 프로그램의 줄 번호, 트레이스백(traceback)을 포함한 메시지를 출력한다.

트레이스백은 현재 실행 중인 함수, 이 함수를 호출한 함수, 다시 이 함수를 호출한 함수 같은 순서를 보여준다. 즉, 각 호출이 발생한 파일의 줄 번호를 비롯해서 함수 호출이 어디에서 어디로 되는지 같은 함수 호출 순서를 추적한다.

첫 번째 단계는 프로그램에서 오류가 발생한 위치를 조사하고 무슨 일이 일어나는지 알아보는 것이다. 자주 발생하는 런타임 오류 몇 가지는 다음과 같다.

NameError

현재 환경에 없는 변수를 사용하려 한 것이다. 변수 이름의 철자가 올바른지, 적어도 일관된 이름을 사용하는지 확인해야 한다. 지역 변수는 범위 안에서만 사용할 수 있다. 예를 들어 로컬 변수를 정의한 함수 바깥에서 이를 참조할 수 없다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.