我想确定库中每个python模块的导入,以便在自定义配置管理框架中使用。我见过像snakefood这样的工具,但我更喜欢在正常程序执行期间计算依赖关系图,而不是作为~编译步骤。在
到目前为止,我已经尝试编写了一个自定义的Finder and Loader。这两种方法在第一次导入模块时都按预期工作,但由于sys.modules
缓存,在后续导入时不会触发。在
每次导入模块时,我都可以重写通知的__built__.__import__
,但这种方法似乎是不明智的,因为PEP 302。在
有没有可以放在sys.modules
缓存查找前面的导入钩子?或者另一种快速计算依赖关系的方法?在
有可能(如果有问题)重新分配给
sys.modules
:但是,如果导入系统发生更改,则可能需要进行一些维护。在
相关问题 更多 >
编程相关推荐