导入由变量定义的包

时间:2012-09-13 12:04:44

标签: python

我想做一些包导入定时测试。为此,我想定义一个包列表:

packages = [ 'random', 'dateutils', ... ]

for package in packages:
    import package

这当然不起作用,因为import尝试导入包“package”。如何告诉import导入变量“package”所指向的包?

2 个答案:

答案 0 :(得分:8)

for package in packages:
    package = __import__(package)

请注意,如果要从包中导入模块,例如A.B

__import__('A.B')会返回包A,但__import__('A.B', fromlist = [True])会返回模块B

答案 1 :(得分:1)

阅读手册中"__import__"方法的说明可能对您有所帮助。