1 目录结构:
2 ---lib
3 |---aa.py #存在类A
4 |---testlib
5 |---bb.py #存在类B
6 ---test_in.py #执行文件
7
8 # 动态导入模块
9 # 前提条件:知道模块的字符串形式
10 # __import__导入只能从第一层开始使用
11 aa = 'lib.aa'
12 mod = __import__(aa)
13 instance_a = getattr(mod.aa, 'A')
14 obj = instance_a()
15 print obj.name
16
17 bb = 'lib.testlib.bb'
18 mod = __import__(bb)
19 instance_b = getattr(mod.testlib.bb, 'B')
20 obj = instance_b()
21 print obj.name
22
23 # importlib导入可以从导入的模块开始使用,官方推荐
24 import importlib
25 mod = importlib.import_module(aa)
26 obj = mod.A()
27 print obj.name
28
29 mod = importlib.import_module(bb)
30 obj = mod.B()
31 print obj.name
32
33 --------------------------------------------
34 test
35 bb
36 test
37 bb