首页 > 解决方案 > 如何在 Python3 中列出导入的模块和版本

问题描述

我知道关于 SO 的几个问题似乎解决了这个问题(例如thisthis)。但是,报告的解决方案似乎不适用于我的代码(python 3.6.5)。在第一种情况下,打印的模块更少,在第二种情况下,显示的信息更多(sys.modules.keys())。

有没有一种简单的方法可以以与R__version__类似的方式显示所有导入的顶级模块以及版本(通过) ?sessionInfo()

标签: pythonpython-3.xmoduleversion

解决方案


这对我有用:

import sys
for module in sys.modules:
    try:
        print(module,sys.modules[module].__version__)
    except:
        try:
            if  type(modules[module].version) is str:
                print(module,sys.modules[module].version)
            else:
                print(module,sys.modules[module].version())
        except:
            try:
                print(module,sys.modules[module].VERSION)
            except:
                pass

推荐阅读