python中reload重载实例用法


Posted in Python onDecember 15, 2020

当我们想对python中原有的模块进行覆盖,又不希望退出当前的程序,就需要用到重载的概念。这样既能使模块得到更新,又不影响解释器的使用。在导入的模块上,也是对之前原有模块的一次覆盖,包括最初导入时所加载的各种过程。下面我们学习reload的一些基础内容,在实例中体会加载功能。

1.装载MyModule语法演示:

from imp import reload reload(MyModule)

2.参数

module -- 模块对象。

3.返回值

返回模块对象。

4.实例

当前目录下有一个test.py :

# i am test.py
num = 1

Python console :

>>> import test
>>> test.num
1

在脚本运行期,如果 test.py 中的num 改为2,此时需要热更:

# i am test.py
num = 2

Python console :

>>> from importlib import reload
>>> reload(test)
<module 'test' from '/home/xiaojie/URun.ResearchPrototype/People/Xiaojie/test.py'>
>>> test.num
2

注意:reload函数希望获得的参数是一个已经加载了的模块对象的名称,所以如果在重载之前,请确保已经成功地导入了这个模块。

说明:Python 3.0把reload内置函数移到了imp标准库模块中。它仍然像以前一样重载文件,但是,必须导入它才能使用。

知识点扩展:

python3中reload()中出现错误的原因

>>> import os
>>> os.getcwd()
'C:\\CodingApp\\python'
>>> os.chdir(r'C:\Users\JIANCHEN\PycharmProjects\决策树\src')
>>> os.getcwd()
'C:\\Users\\JIANCHEN\\PycharmProjects\\决策树\\src'
>>> from imp import reload

Warning (from warnings module):
 File "__main__", line 1
DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
>>> reload(index)
Traceback (most recent call last):
 File "<pyshell#5>", line 1, in <module>
  reload(index)
NameError: name 'index' is not defined
>>> import index
>>> reload(index)
<module 'index' from 'C:\\Users\\JIANCHEN\\PycharmProjects\\决策树\\src\\index.py'>

总结:在reload之前要import

到此这篇关于python中reload重载实例用法的文章就介绍到这了,更多相关python中如何使用reload重载内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
零基础写python爬虫之抓取百度贴吧并存储到本地txt文件改进版
Nov 06 Python
Python的另外几种语言实现
Jan 29 Python
Python使用CMD模块更优雅的运行脚本
May 11 Python
python简单分割文件的方法
Jul 30 Python
python获取指定时间差的时间实例详解
Apr 11 Python
python 实现一次性在文件中写入多行的方法
Jan 28 Python
python利用7z批量解压rar的实现
Aug 07 Python
Python 批量刷博客园访问量脚本过程解析
Aug 30 Python
Python Pandas 转换unix时间戳方式
Dec 07 Python
记一次django内存异常排查及解决方法
Aug 07 Python
彻底解决pip下载pytorch慢的问题方法
Mar 01 Python
python pandas 解析(读取、写入)CSV 文件的操作方法
Dec 24 Python
python 实现socket服务端并发的四种方式
Dec 14 #Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
Dec 14 #Python
Python获取指定网段正在使用的IP
Dec 14 #Python
python利用pytesseract 实现本地识别图片文字
Dec 14 #Python
python 利用百度API识别图片文字(多线程版)
Dec 14 #Python
python3中for循环踩过的坑记录
Dec 14 #Python
Python 数据分析之逐块读取文本的实现
Dec 14 #Python
You might like
哪吒敖丙传:新人物二哥敖乙出场 小敖丙奶气十足
2020/03/08 国漫
使用PHP实现二分查找算法代码分享
2011/06/24 PHP
PHP中比较时间大小实例
2014/08/21 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
javascript数组的扩展实现代码集合
2008/06/01 Javascript
jQuery实战之品牌展示列表效果
2011/04/10 Javascript
表单序列化与jq中的serialize使用示例
2014/02/21 Javascript
jQuery中get和post方法传值测试及注意事项
2014/08/08 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
JS实现的3D拖拽翻页效果代码
2015/10/31 Javascript
微信小程序 五星评分(包括半颗星评分)实例代码
2016/12/14 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
2017/04/26 Javascript
微信小程序使用radio显示单选项功能【附源码下载】
2017/12/11 Javascript
微信小程序如何像vue一样在动态绑定类名
2018/04/17 Javascript
Django+Vue跨域环境配置详解
2018/07/06 Javascript
Angular使用ControlValueAccessor创建自定义表单控件
2019/03/08 Javascript
vue组件命名和props命名代码详解
2019/09/01 Javascript
简单介绍Python中的len()函数的使用
2015/04/07 Python
Python的消息队列包SnakeMQ使用初探
2016/06/29 Python
python多线程调用exit无法退出的解决方法
2019/02/18 Python
python mysql 字段与关键字冲突的解决方式
2020/03/02 Python
Django中的DateTimeField和DateField实现
2021/02/24 Python
英国最大的化装舞会服装网站:Fancydress.com
2017/08/15 全球购物
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
介绍下Java的输入输出流
2014/01/22 面试题
职业生涯规划设计步骤
2014/01/12 职场文书
养牛场项目建议书
2014/05/13 职场文书
三好学生个人先进事迹材料
2014/05/17 职场文书
教师自我剖析材料(群众路线)
2014/09/29 职场文书
会计求职自荐信
2015/03/26 职场文书
调解书格式范本
2015/05/20 职场文书
教师节联欢会主持词
2015/07/04 职场文书
Pytest中skip和skipif的具体使用方法
2021/06/30 Python
动画电影《擅长捉弄人的高木同学》6月10日上映!
2022/03/20 日漫
Golang 字符串的常见操作
2022/04/19 Golang
MySQL 条件查询的常用操作
2022/04/28 MySQL