gpt4 book ai didi

python - 如何列出模块所依赖的用户创建的 python 文件?

转载 作者:太空宇宙 更新时间:2023-11-03 20:55:43 28 4
gpt4 key购买 nike

我有兴趣使用doit自动化 python 包的构建过程。如果可能的话,如果任务所依赖的任何用户创建的源文件已更改,我希望 doit 重新执行任务。根据我的理解,实现此目的的最佳方法是使用 file_dep 键和依赖源文件的列表,但是我在生成此列表时遇到了很多麻烦。

我尝试过使用sys.modulesinspect.getmembers(),但是这些解决方案无法处理不导入模块的导入语句,例如作为 from x import Y,不幸的是,这在我正在开发的包中很常见。

我调查的另一条路线是使用 snakefood工具,最初看起来它会完全满足我的要求,为给定路径中的每个文件生成文件依赖项列表。不幸的是,这个工具似乎对 Python 3 的支持有限,这使得它对我的包毫无用处。

有谁知道如何在 Python 3 中获得类似 snakefood 的功能,或者是将我的所有源代码更改为仅导入模块的唯一选择?

最佳答案

doit tutorial它本身是关于创建 python 模块导入图!

它使用 import_deps包,它类似于snakefood

请注意,对于您的用例,您需要在任务操作执行期间修改 file_dep 本身。为此,您需要将 task 参数传递给您的操作(如 here 中所述)。

关于python - 如何列出模块所依赖的用户创建的 python 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56048226/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com