python 动态加载的实现方法


Posted in Python onDecember 22, 2017

脚本语言都有一个优点,就是动态加载。lua语言有这个优点,python也有这个特性。说简单点就是,如果开发者发现自己的代码有bug,那么他可以在不关闭原来代码的基础之上,动态替换模块。替换方法一般用reload来完成。

1、reload的基本原理

reload主要做了两个动作,删除原来的模块,添加新的模块

2、reload的等效代码

del sys.modules[module_name]
__import__(module_name)

3、reload使用的时候要注意什么

3.1 reload的入口参数是module,不是字符串,即

import sys
module = sys.modules[module_name]

3.2 重载的文件只是对应模块的__init__.py文件,如果是其他文件,则不会生效

3.3 如果是目录中其他文件,则需要分别重新加载,比如

import sys
del sys.modules['module_name:sub_file']
__import__('module_name:sub_file')

或者是

reload(sys.modules['module_name:sub_file'])

总结

以上所述是小编给大家介绍的python 动态加载的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木的支持!

Python 相关文章推荐
python使用心得之获得github代码库列表
Jun 25 Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
Nov 10 Python
python基于itchat模块实现微信防撤回
Apr 29 Python
pip安装python库的方法总结
Aug 02 Python
Python 如何提高元组的可读性
Aug 26 Python
python如何建立全零数组
Jul 19 Python
PyCharm2019 安装和配置教程详解附激活码
Jul 31 Python
python打包生成so文件的实现
Oct 30 Python
Django数据统计功能count()的使用
Nov 30 Python
详解python中[-1]、[:-1]、[::-1]、[n::-1]使用方法
Apr 25 Python
python中sqllite插入numpy数组到数据库的实现方法
Jun 21 Python
Python NumPy灰度图像的压缩原理讲解
Aug 04 Python
Python决策树分类算法学习
Dec 22 #Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 #Python
Python2.7下安装Scrapy框架步骤教程
Dec 22 #Python
Python机器学习之决策树算法
Dec 22 #Python
python+selenium实现登录账户后自动点击的示例
Dec 22 #Python
python实现决策树
Dec 21 #Python
python利用sklearn包编写决策树源代码
Dec 21 #Python
You might like
深入解析PHP的引用计数机制
2013/06/14 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
php 的反射详解及示例代码
2016/08/25 PHP
php/JS实现的生成随机密码(验证码)功能示例
2019/06/06 PHP
Exitjs获取DataView中图片文件名
2009/11/26 Javascript
基于JQuery 的消息提示框效果代码
2011/07/31 Javascript
使用Node.js配合Nginx实现高负载网络
2015/06/28 Javascript
jquery带动画效果幻灯片特效代码
2015/08/27 Javascript
jquery点击改变class并toggle的实现代码
2016/05/15 Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
2016/08/29 Javascript
通过学习bootstrop导航条学会修改bootstrop颜色基调
2017/06/11 Javascript
ionic 自定义弹框效果
2017/06/27 Javascript
使用JavaScript实现一个小程序之99乘法表
2017/09/21 Javascript
微信小程序与webview交互实现支付功能
2019/06/07 Javascript
云服务器部署Node.js项目的方法步骤(小白系列)
2020/03/23 Javascript
[03:01]2014DOTA2国际邀请赛 小组赛7月13日TOPPLAY
2014/07/14 DOTA
使用pdb模块调试Python程序实例
2015/06/02 Python
python中的文件打开与关闭操作命令介绍
2018/04/26 Python
python3的输入方式及多组输入方法
2018/10/17 Python
Python 求数组局部最大值的实例
2019/11/26 Python
利用pandas将非数值数据转换成数值的方式
2019/12/18 Python
python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例
2020/03/06 Python
Python3如何在服务器打印资产信息
2020/08/27 Python
Python中的面向接口编程示例详解
2021/01/17 Python
美国隐形眼镜网:Major Lens
2018/02/09 全球购物
Brora官网:英国领先的羊绒服装品牌
2019/08/28 全球购物
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
智乐游戏测试笔试题
2014/05/21 面试题
高中生班主任评语
2014/04/25 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
优秀学生干部事迹材料
2014/12/24 职场文书
五四青年节比赛演讲稿
2015/03/18 职场文书
留学推荐信中文范文
2015/03/26 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
Python OpenCV 图像平移的实现示例
2021/06/04 Python
python神经网络ResNet50模型
2022/05/06 Python