2012-04-11 3 views
2

Windows에서 Python 스크립트가 종료되면 명령 프롬프트 창이 닫힙니다. 오류에서 빠져 나오면 아무것도 읽을 수 없으면 닫힙니다.오류 발생 후 명령 줄 창이 닫히는 것을 방지하는 방법

if __name__ == '__main__': 
    try: 
     main() 
    except BaseException as e: 
     print('Error:') 
     print(e) 
     raise 
    finally: 
     raw_input('(Press <Enter> to close)') 

그것은 main() 경우 전화 sys.exit()을 작동하지만 구문 오류 같은 것들에 대해 작동하지 않습니다 나는 창문도 오류에 열 유지하려면이 옵션을 사용하고있다. 더 좋은 방법이 있습니까?

답변

3

대부분의 시나리오에서 사용할 수 있습니다 (os._exit()을 호출하는 스레드는 주목할만한 예외 중 하나입니다).

파이썬 스크립트를 배치 파일로 감싸고 파이썬 인터프리터를 호출 한 후 명령을 사용하는 방법도 있습니다.

3

나는 test.py

env\project_env\Scripts\python.exe에 의해 사용되는 라이브러리와 VIRTUALENV 디렉토리는 지금이 코드를 사용하는 VIRTUALENV 마법을 만드는 파이썬 인터프리터를

@echo off 
env\project_env\Scripts\python.exe -mpdb test.py 
pause 

env\project_env을 배치 파일을이다 사용하고 있습니다 라이브러리가 설치되어 있습니다.

-mpdb은 프로그램이 검색되지 않은 예외로 종료 될 경우 디버거를 엽니 다.

관련 문제