首页 > 后端开发 > Python教程 > 如何获取 Python 程序中导入模块的列表?

如何获取 Python 程序中导入模块的列表?

Mary-Kate Olsen
发布: 2024-10-29 09:54:02
原创
1038 人浏览过

How can I get a list of imported modules in my Python program?

获取导入模块的列表

列出导入模块是理解 Python 程序的依赖关系和结构的宝贵技术。幸运的是,Python 提供了一种简单的方法来检索此信息。

要枚举导入到程序中的所有模块,请使用以下代码:

<code class="python">import sys
sys.modules.keys()</code>
登录后复制

此代码段访问 sys.modules 字典,其中包含代表模块名称的键。通过迭代这些键,您可以检索导入模块的列表。

例如,给定代码:

<code class="python">import os
import sys</code>
登录后复制

执行上记のコード的结果是 ['os' , 'sys'],为您提供导入的模块名称。

如果您有兴趣获取当前模块中专门的导入列表,您可以采用以下方法:

<code class="python">import types
def imports():
    for name, val in globals().items():
        if isinstance(val, types.ModuleType):
            yield val.__name__</code>
登录后复制

该函数内省当前模块的 globals() 并过滤掉 types.ModuleType 实例的条目。即使在导入中使用了别名,此近似值也会返回原始模块名称。

请注意,此函数不包括本地导入或非模块导入,例如“from x import y”。此外,它返回 val.__name__,它对应于原始模块名称。要获取别名,您可以在函数中使用yield name。

以上是如何获取 Python 程序中导入模块的列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板