【发布时间】:2013-07-21 03:38:19
【问题描述】:
我正在尝试在 Python 中动态导入模块。 这意味着 - 我有一个 Python 包,里面有模块。 在不指定模块名称的情况下,我想将每个模块名称的字典保存到指向该模块的指针。
我尝试使用this discussion的建议
我的目录是:
foo/
__init__.py
bar1.py
bar2.py
我使用的脚本是:
import pkgutil
import foo
for importer, name, ispkg in pkgutil.iter_modules(foo.__path__, foo.__name__ + "."):
print "Found submodule %s (is a package: %s)" % (name, ispkg)
module = __import__(name)
print "Imported", module
第一次迭代得到的输出是:
Found submodule foo.bar1 (is a package: False)
Imported <module 'foo' from '/path/to/foo/__init__.pyc'>
所以我没有使用它来获取我的 bar1 模块,而是通过导入获取 foo 包。
如何获取 bar1 和 bar2 模块?
如果pkgutil的使用不正确,欢迎使用其他方法。
【问题讨论】:
标签: python import module package