我想从包中提供动态模块列表。布局:
modules/
__init__.py
index.py
user.py
现在我有一个静态定义的modulelist
元组:
modulelist = ('index','user')
然后我访问from modules import modulelist
动态提供元组(或列表)的主流方式是什么?
答案 0 :(得分:0)
以下是使用pkgutil.walk_packages
的代码段(此处为文档:https://docs.python.org/2/library/pkgutil.html#pkgutil.walk_packages):
# In your case -- you can however substitute any package
import modules
mod = modules
for _, module_name, _ in pkgutil.walk_packages(
mod.__path__,
prefix=mod.__name__ + '.',
):
# Do something with module_name
我在代码编写的几个地方使用过这个: