列出一个项目导入的所有python模块

Posted

技术标签:

【中文标题】列出一个项目导入的所有python模块【英文标题】:List all the python modules imported by a project 【发布时间】:2020-06-08 23:24:00 【问题描述】:

我在 python=3.6 上运行我的项目,我想列出这个项目/repo/目录中存在的 python 脚本导入的所有模块,以便我可以构建一个项目特定的需求文件以供将来使用。 帮助我编写一个脚本来遍历目录树以列出模块或任何可用的 python 模块。

【问题讨论】:

这能回答你的问题吗? How to list imported modules? 您可以使用 pip freeze 列出所有已安装的库。 pip freeze 将列出安装在 os / virtual-environment 中的所有库,但我不想列出特定于项目的库和包 【参考方案1】:

我遇到了 pipreqs 包,它根据项目的导入语句生成了一个 requirements.txt 文件。

安装:

pip install pipreqs

用法:

pipreqs /path/to/project

pipreqs 会自动在你项目的根目录下生成一个 requirements.txt 文件。

限制: Pipreqs 使用项目的导入来生成 requirements.txt 文件。因此,需要注意的是,pipreqs 不会包含特定项目所需的插件。您需要在requirement.txt中手动添加插件信息

【讨论】:

以上是关于列出一个项目导入的所有python模块的主要内容,如果未能解决你的问题,请参考以下文章

如何列出导入的模块?

PYTHON学习0040:函数---模块的种类和导入方法--2019-7-27

如何在 Python 中查找所有子模块?

Python:仅使用 dir() 获取导入模块中定义的类?

Python“header.py”模块

如何列出 Python 模块中的所有函数?