2019年8月10日 动态导入模块 己所不欲勿施于人
module_t=__import__('study.test1')#导入study模块,虽然有test1 但是导入的是最顶级的模块,但是执行了test1一次 print(module_t) module_t2=__import__('test1') #导入当前路径下的test1 print(module_t2) module_t.test1.test() module_t2.test() #注意上面两个路径的差异
>>>
<module 'study' from '/Users/miaowu/PycharmProjects/untitled/study/__init__.py'>
执行 test1
<module 'test1' from '/Users/miaowu/PycharmProjects/untitled/study/test1.py'>
test1
test1
from study.test1 import * test1() test2() #如果test2前面_ 开头,则不能用import *导入
from study.test1 import test1,_test2 test1() _test2() #_test2()的方法
import importlib m=importlib.import_module('study.test1') print(m) #执行test1,且导入的是test1模块,与__import__有差异 m.test1() m._test2()