Python:检测循环导入的脚本
作者:互联网
有人知道可以扫描源目录和检测循环导入的库/脚本吗?
解决方法:
我完全不知道任何工具,但我现在可以想到几种方法来获取这些数据.
让口译员为您服务
对于您拥有的每个模块,创建一个导入它的存根模块,然后运行该模块
$python -v stub_module.py
这只适用于您不依赖于sys.path hackery并且您的模块在导入时没有危险的副作用(两个非常可疑的功能FWIW).您将获得传递导入关闭,但使用此检测循环导入应该是直截了当的.
使用logilab.astng
使用logilab.astng,可以轻松提取模块的所有直接导入(查找logilab.astng.nodes.From和logilab.astng.nodes.Import类型的节点).获得所有模块的直接导入列表后,创建导入图并查找周期.
同样,这仅在您不使用sys.path hacks时才有效.
标签:python,python-2-5 来源: https://codeday.me/bug/20190704/1377281.html