Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析


Posted in Python onMarch 30, 2020

本文实例讲述了Python动态导入模块:__import__、importlib、动态导入的使用场景。分享给大家供大家参考,具体如下:

相关内容:

  • __import__
  • importlib
  • 动态导入的使用场景

首发时间:2018-02-23 16:06


__import__:

功能:

  • 是一个函数,可以在需要的时候动态导入模块

使用:

  • __import__(模块名)
  • 但对于多级目录,只会导入第一级Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
  • 目录结构:Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
  • Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
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 importlib
mo1= importlib.import_module('des')
mo2= importlib.import_module('child.child')
print(mo1,mo2)#mo2直接到child.child

des_B= mo1.B()
mo1.fun2()

mo2.fun1()

动态导入模块的使用场景:

  • 动态切换模块
  • 使用反射判断是否有对应类、方法,无则设置
import importlib
mo3= 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操作字符串之rindex()方法的使用
May 19 Python
Python实现对excel文件列表值进行统计的方法
Jul 25 Python
python实现FTP服务器服务的方法
Apr 11 Python
python 删除非空文件夹的实例
Apr 26 Python
Python使用matplotlib绘制三维图形示例
Aug 25 Python
python 字典有序并写入json文件过程解析
Sep 30 Python
使用pygame写一个古诗词填空通关游戏
Dec 03 Python
python 爬虫 实现增量去重和定时爬取实例
Feb 28 Python
AUC计算方法与Python实现代码
Feb 28 Python
Python如何对齐字符串
Jul 30 Python
python将数据插入数据库的代码分享
Aug 16 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
Sep 29 Python
Django 删除upload_to文件的步骤
Mar 30 #Python
python with语句的原理与用法详解
Mar 30 #Python
对django 2.x版本中models.ForeignKey()外键说明介绍
Mar 30 #Python
Python进程的通信Queue、Pipe实例分析
Mar 30 #Python
基于Django OneToOneField和ForeignKey的区别详解
Mar 30 #Python
django 扩展user用户字段inlines方式
Mar 30 #Python
Python3标准库之threading进程中管理并发操作方法
Mar 30 #Python
You might like
PHP大转盘中奖概率算法实例
2014/10/21 PHP
php魔法函数与魔法常量使用介绍
2017/07/23 PHP
PHP实现cookie跨域session共享的方法分析
2019/08/23 PHP
IE autocomplete internet explorer's autocomplete
2007/06/30 Javascript
自己整理的一个javascript日期处理函数
2010/10/16 Javascript
javascript的字符串按引用复制和传递,按值来比较介绍与应用
2012/12/28 Javascript
Nodejs sublime text 3安装与配置
2014/06/19 NodeJs
函数式 JavaScript(一)简介
2014/07/07 Javascript
JS实现OCX控件的事件响应示例
2014/09/17 Javascript
js简单实现标签云效果实例
2015/08/06 Javascript
详细解读JavaScript的跨浏览器事件处理
2015/08/12 Javascript
实例讲解JS中setTimeout()的用法
2016/01/28 Javascript
JavaScript判断数字是否为质数的方法汇总
2016/06/02 Javascript
jQuery异步提交表单的两种方式
2016/09/13 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
BootStrap数据表格实例代码
2017/09/13 Javascript
JS解析后台返回的JSON格式数据实例
2018/08/06 Javascript
js canvas实现红包照片效果
2018/08/21 Javascript
详解小程序云开发数据库
2019/05/20 Javascript
用pickle存储Python的原生对象方法
2017/04/28 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
2019/04/29 Python
PyQT5 QTableView显示绑定数据的实例详解
2019/06/25 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
详解基于python-django框架的支付宝支付案例
2019/09/23 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
2020/01/14 Python
python实现PCA降维的示例详解
2020/02/24 Python
解决python运行启动报错问题
2020/06/01 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
2020/06/02 Python
美国滑雪板和装备购物网站:Skis.com
2018/12/20 全球购物
合作协议书范文
2014/08/20 职场文书
党的群众路线教育实践活动调研报告
2014/11/03 职场文书
2014年保管员工作总结
2014/11/18 职场文书
如何解决php-fpm启动不了问题
2021/11/17 PHP
《勇者辞职不干了》上卷BD发售宣传CM公开
2022/04/08 日漫
图神经网络GNN算法
2022/05/11 Python