1
可以说我有一个python包,我想列出这个包中的所有模块。即从python包中获取模块名称
>>> import my_package
>>> import inspect
>>> inspect.getmembers(my_package, inspect.ismodule)
>>> []
由于某种原因,我得到一个空的列表。现在,如果我手动从包中加载一个模块则:
>>> import my_package.module_a
>>> inspect.getmembers(my_package, inspect.ismodule)
>>> ['module_a, <module '....'>]
假设我有多个模块,我不希望加载逐一是否有任何其他方式做到这一点? (ps.s. from my_package import *
将不起作用)。
此外,你知道是什么造成这种行为?与命名空间有什么关系?
P.S包不是在本地安装的,我从服务器加载所有东西。
如果在第二次导入之前访问my_package.module_a *,会发生什么情况? – jonrsharpe