python编程(动态加载)
来源:互联网 发布:使命召唤8 mac 迅雷 编辑:程序博客网 时间:2024/06/05 20:53
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
脚本语言都有一个优点,就是动态加载。lua语言有这个优点,python也有这个特性。说简单点就是,如果开发者发现自己的代码有bug,那么他可以在不关闭原来代码的基础之上,动态替换模块。替换方法一般用reload来完成。
1、reload的基本原理
reload主要做了两个动作,删除原来的模块,添加新的模块
2、reload的等效代码
del sys.modules[module_name]__import__(module_name)
3、reload使用的时候要注意什么
3.1 reload的入口参数是module,不是字符串,即
import sysmodule = sys.modules[module_name]
3.3 如果是目录中其他文件,则需要分别重新加载,比如
import sysdel sys.modules['module_name:sub_file']__import__('module_name:sub_file')
或者是
reload(sys.modules['module_name:sub_file'])
4、类似的案例还包括如何从字符串找到函数名
getattr(sys.modules['__main__'], 'add')
大家可以多测试一下,有更好的办法的话也可以一起学习一下。
阅读全文
0 0
- python编程(动态加载)
- python类动态加载
- python动态加载模块
- python动态加载包
- python动态加载模块
- 动态加载 python 文件
- python动态加载包
- Python动态加载
- Python之动态加载
- Python的动态加载机制
- Python的动态加载机制
- python动态加载模块(reload)
- python 动态的加载包
- Python 模块动态加载技术
- python 爬虫动态加载网站
- 动态加载python可执行模块的办法(示例代码)
- python 动态加载 和 自动测试 探讨 (一)
- python基础-动态加载lazy_import(利用__import__)
- HDOJ 2023 求平均成绩
- 2018百度竞价排名最新28规则【实操篇】
- 在jupyter notebook里的LaTeX数学公式总结
- java中List的用法和实例详解
- Linux查看系统配置常用命令
- python编程(动态加载)
- 抽象工厂模式
- 【Ubuntu】Ubuntu下Webstorm的安装及破解方法
- 生产者-消费者问题
- es6 promise
- 四.Zookeeper之JAVA API
- Foundation5(五)
- spring——(2)bean的配置项
- Metinfo CMS 5.3.19 密码重置漏洞分析