Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
本文实例讲述了Python动态导入模块:__import__、importlib、动态导入的使用场景。分享给大家供大家参考,具体如下:
相关内容: __import__ importlib 动态导入的使用场景首发时间:2018-02-23 16:06
__import__:功能: 是一个函数,可以在需要的时候动态导入模块使用: __import__(模块名) 但对于多级目录,只会导入第一级 目录结构:mo1=__import__('des')mo2=__import__('child.child')mo3=__import__('child')print(mo1,mo2,mo3)#mo3与mo2相同#同级目录使用模块对象来调用mo1.B()mo1.fun2()#对于目录下的,动态导入只会导入第一级目录mo2.child.A()#虽然没有具体定义类体,但无错就是成功mo2.child.fun1()mo3.child.fun1()importlib:介绍: 是一个模块,可以进行动态导入模块用法: importlib.import_module('模块名')
import importlibmo1= importlib.import_module(’des’)mo2= importlib.import_module(’child.child’)print(mo1,mo2)#mo2直接到child.childdes_B= mo1.B()mo1.fun2()mo2.fun1()动态导入模块的使用场景: 动态切换模块 使用反射判断是否有对应类、方法,无则设置
import importlibmo3= importlib.import_module(’child’)def func4(): print(' run in func4')if hasattr(mo3,'child1'): print('yes') c=getattr(mo3,'child')else: #没有则设置 setattr(mo3,'func4',func4)mo3.func4() 其他。。。
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
相关文章: