如何使用__import__导入*

时间:2010-05-26 20:08:31

标签: python import

使用__import__执行以下操作的最佳方法是什么,以便我可以动态指定模块?

from module import *

3 个答案:

答案 0 :(得分:15)

我找到的唯一方法:

module = __import__(module, globals(), locals(), ['*'])
for k in dir(module):
    locals()[k] = getattr(module, k)

答案 1 :(得分:4)

它与普通的从导入调用相同,您只需为'*'传递一个包含fromlist的列表:

moduleName = "foo"
__import__(moduleName, globals(), locals(), ['*'])

答案 2 :(得分:4)

__import__()从不向本地范围添加任何内容。您将必须浏览返回的模块,根据需要访问其属性。