繁体   English   中英

如何列出 Python 程序使用的所有非标准模块?

[英]How can I list all non-standard modules used by a Python program?

正如一些权威人士所说,Python 标准库在您的版本的 Python 核心文档中列出,默认情况下它是内置的,您不必将其与 Python 本身分开安装。 例如, math是一个标准模块,您不需要使用pip install math安装它。

非标准模块不是内置的,您必须在 Python 程序中使用它们之前安装它们。 例如, lxml是一个非标准模块。 如果未安装,在 Python shell 中import lxml时会弹出“没有名为lxml的模块”错误。

现在是时候转向主题了,如何列出 Python 程序使用的所有非标准模块?

test.py是一个 Python 程序,它使用python test.py执行。 python test.py运行时调用了多少个非标准模块?

pip freeze显示所有已安装的模块,但其中一些没有被python test.py调用。

我想知道同样的事情,因为我想通过试错法以外的方法为我的项目设置一个 conda 环境。 我发现的工作是创建一个只有 python 和 pylint 的裸环境,使用例如,

conda create -n myenv python=3 pylint

然后从该环境中运行:

pylint /path/to/module --disable=all --enable=import-error

这将按文件很好地列出所有非标准导入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM