Python reload 函数

本站已接入国内中文版 ChatGPT 镜像,欢迎大家前往体验《 国内中文 ChatGPT

基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门


一.Python reload 函数简介

  • 在 Python2.x 中 reload 函数是 Python 的内置函数;
  • 在 Python3.x 中 reload 函数需要导入 imp 第三方库才能使用;
# !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"

三.猜你喜欢

  1. Python 条件推导式
  2. Python 列表推导式
  3. Python 字典推导式
  4. Python 不定长参数 *argc/**kargcs
  5. Python 匿名函数 lambda
  6. Python return 逻辑判断表达式
  7. Python is 和 == 区别
  8. Python 可变数据类型和不可变数据类型
  9. Python 浅拷贝和深拷贝
  10. Python 异常处理
  11. Python 线程创建和传参
  12. Python 线程互斥锁 Lock
  13. Python 线程时间 Event
  14. Python 线程条件变量 Condition
  15. Python 线程定时器 Timer
  16. Python 线程信号量 Semaphore
  17. Python 线程障碍对象 Barrier
  18. Python 线程队列 Queue – FIFO
  19. Python 线程队列 LifoQueue – LIFO
  20. Python 线程优先队列 PriorityQueue
  21. Python 线程池 ThreadPoolExecutor(一)
  22. Python 线程池 ThreadPoolExecutor(二)
  23. Python 进程 Process 模块
  24. Python 进程 Process 与线程 threading 区别
  25. Python 进程间通信 Queue / Pipe
  26. Python 进程池 multiprocessing.Pool
  27. Python GIL 锁

本站已接入国内中文版 ChatGPT 镜像,欢迎大家前往体验《 国内中文 ChatGPT

文章版权声明 1、本网站名称:猿说编程
2、本站永久网址:https://www.codersrc.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。

© 版权声明
THE END
喜欢就支持一下吧
点赞1 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容