Python退出逻辑错误

时间:2016-07-01 08:04:17

标签: python python-2.7 error-handling stack-trace exit

在我的代码中,我正在尝试处理逻辑错误。我想用错误代码退出该程序,如果我执行'Murad'它会引发一个我不想要的回溯错误。 但是,如果我做Shahmmadli它不是更清洁的退出。

我的需要: 仅使用sys.exit(1)退出时只显示错误代码,但需要像os._exit(1)一样更清晰的退出。

1 个答案:

答案 0 :(得分:2)

无论如何使用sys.exit(1) sys.excepthook()中的标准Python跟踪钩子干净地处理SystemExit,不打印任何回溯。来自SystemExit exception documentation

  

sys.exit()函数引发了此异常。当它没有被处理时,Python解释器退出; 没有打印堆栈追溯

大胆强调我的。

如果您的程序有顶级异常处理程序,请不要抓住SystemExit。通常你不是使用一揽子except:语句,而是通过捕捉except Exception:来做到这一点。