基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门
一.Python reload 函数简介
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python reload 函数.py
@Time:2021/05/09 08:00
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
# python2 内置函数
reload(module)
# python3
from imp import reload # 导入模块
reload(module)
说明:
1.module 必须是已经成功导入的模块,使用 reload 函数的前提,是 reload 函数重新导入的模块在之前已经使用 import 或者 from 导入成功了,否则,reload 函数也无法生效,导入是一个开销很大的操作;
2.Python 中的 import 语句可以导入 module 文件,但是 import 语句只是第一次导入的时候会执行 module 文件中的代码,然后就会把导入的模块文件存入到内存,当再次导入的时候,Python 是直接从内存里面取出 module 文件,而不会执行 module 文件的内容了,而 reload 函数强制 Python 重新导入并执行 module 文件;
二.Python reload 函数使用
假设有 module 文件 a.py :
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python reload 函数.py
@Time:2021/05/09 08:00
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
def fun():
print("python教程 www.codersrc.com")
然后在可交互的控制台执行如下代码:
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python reload 函数.py
@Time:2021/05/09 08:00
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
>>>import a
>>>a.fun()
"python教程 www.codersrc.com"
然后我们不退出可交互式控制台,然后修改 a.py :
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python reload 函数.py
@Time:2021/05/09 08:00
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
def fun():
pirnt("猿说python www.codersrc.com")
然后在到可交互的控制台执行如下代码:
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python reload 函数.py
@Time:2021/05/09 08:00
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
>>>import a
>>>a.fun() # 已经导入的module文件,直接从内存里面取,不会执行
"python教程 www.codersrc.com
"
>>>from imp import reload # 对于Python 3.X来说,reload不是内置函数,而是imp module的一个函数
>>>reload(a)
<module 'a' form '/home/chaochao/python/a.py'>
>>>a.fun() # 对module文件a.py的改动反映出来了
"猿说python www.codersrc.com"
三.猜你喜欢
- Python 条件推导式
- Python 列表推导式
- Python 字典推导式
- Python 不定长参数 *argc/**kargcs
- Python 匿名函数 lambda
- Python return 逻辑判断表达式
- Python is 和 == 区别
- Python 可变数据类型和不可变数据类型
- Python 浅拷贝和深拷贝
- Python 异常处理
- Python 线程创建和传参
- Python 线程互斥锁 Lock
- Python 线程时间 Event
- Python 线程条件变量 Condition
- Python 线程定时器 Timer
- Python 线程信号量 Semaphore
- Python 线程障碍对象 Barrier
- Python 线程队列 Queue – FIFO
- Python 线程队列 LifoQueue – LIFO
- Python 线程优先队列 PriorityQueue
- Python 线程池 ThreadPoolExecutor(一)
- Python 线程池 ThreadPoolExecutor(二)
- Python 进程 Process 模块
- Python 进程 Process 与线程 threading 区别
- Python 进程间通信 Queue / Pipe
- Python 进程池 multiprocessing.Pool
- Python GIL 锁
ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容