1
我与许多modules
是imported
,如运行大型script.py
:的Python - 跟踪模块执行
from module import *
当我运行它
,我打印了一些令人失望的结果[u'Brewer and Shipley']
,在进口时,我无法追溯到其method
并停止执行。
有什么我可以用来追踪和制止这一点?
我与许多modules
是imported
,如运行大型script.py
:的Python - 跟踪模块执行
from module import *
当我运行它
,我打印了一些令人失望的结果[u'Brewer and Shipley']
,在进口时,我无法追溯到其method
并停止执行。
有什么我可以用来追踪和制止这一点?
,吹入找出谁自爆是@FMc很好的建议, 这里是另一个伎俩我用
import X print 'X imported' import Y print 'Y imported' import Z print 'Z imported'
这也将帮助你缩小模块有问题。 :)
您可以通过打印中间点进行二分搜索来优化这一点,但我想这是过度engg。
在短期内没有帮助,但将来不要这样做:'从模块导入*'。这总是一个坏主意,除了可能在一次性代码中。要在短期内进行调试,请使用导入编写新脚本:运行,注释导入行,再次运行。重复,直到找到罪魁祸首。 – FMc
@FMc,谢谢,指出。 –
您也可以将此代码添加到脚本的顶部:'import sys; sys.stdout = None'。当导入的代码尝试打印时,它会炸毁堆栈跟踪,您可以检查。 – FMc