是否有内置函数在PyInstaller中保持命令窗口打开

时间:2016-01-08 15:43:07

标签: python command-line pyinstaller

我现在正在从我的Python脚本创建一个可执行文件,当脚本中的某些内容失败时(例如,文件不存在),我退出脚本sys.exit('*Enter reason here*')。这在终端视图中非常有效,因为输出仍然在窗口中可见。但是,当我构建可执行文件时,窗口立即关闭,并且脚本结束的原因是不可读的。

是否可以选择保持命令窗口打开(最好是在PyInstaller中)?

1 个答案:

答案 0 :(得分:3)

我找到了一个选项:

因为sys.exit()引发了错误SystemExit,所以可以在try-except语句中捕获它。即使是sys.exit()中的文字也可以被捕获!因为只有一个被调用的函数(main_function),所以它是一个简短且易于理解的选项:

if __name__ == '__main__':
    try:
        main_function()
    except SystemExit as e:
        print 'Error!', e
        print 'Press enter to exit (and fix the problem)'
        raw_input()