elb*_*ajo 4 python exception-handling python-2.7
有什么区别exit()和raise ValueError("example")除了事实,使用时,我会对我的输出错误打印raise ValueError("example")?
这是个很大的差异.
sys.exit()引发一个SystemExit异常,Python总是捕获并变成程序退出代码.
ValueError如果未被捕获,则提升会触发sys.excepthook()处理程序,然后Python退出.默认的除了钩子打印异常的回溯stderr,之后Python以退出代码1退出.
sys.excepthook()永远不会调用该函数SystemExit,因此您无法自定义该异常的处理,但您可以处理该ValueError异常的处理和其他异常.