2014-11-23 93 views
1

我在我的代码中将零分(和其他类似)Warning s ---这些“不应该”[1]正在发生---但它们很难追踪因为没有提供回溯。 有没有办法让蟒蛇在Warning发生时提高Error并抛出回溯?每当发出警告时退出

在一个完美的世界,我会寻找的东西,我可以在一开始设置,如:

DEBUG = True 
... 
sys.DemandPerfection(DEBUG) # Exit on all Warnings 
... 

[1]:在我所需结果

回答

2

是的,公正的条件将命令行选项-W error传递给Python解释器或将PYTHONWARNINGS设置为error。 但我认为你想解决的办法是

import warnings 
warnings.simplefilter('error') 

这也应该IPython中工作(你可能想要把它变成startup directory为了方便)。

+0

太棒了!无论如何,我可以在'ipython' as-well(即使用'%run')时做到这一点? – DilithiumMatrix 2014-11-23 19:48:48