Python importlib模块重载使用方法详解

 更新时间:2020年10月13日 11:16:20   作者:py鱼  
这篇文章主要介绍了Python importlib模块重载使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

模块介绍

Python提供了importlib包作为标准库的一部分。目的就是提供Python中import语句的实现(以及__import__函数)。另外,importlib允许程序员创建他们自定义的对象,可用于引入过程(也称为importer)。

什么是imp?

另外有一个叫做imp的模块,它提供给Python import语句机制的接口。这个模块在Python 3.4中被否决,目的就是为了只使用importlib。

了解:模块的重载

考虑到性能的原因,每个模块只被导入一次,放入字典sys.module中,如果你改变了模块的内容,你必须重启程序,python不支持重新加载或卸载之前导入的模块,

有的同学可能会想到直接从sys.module中删除一个模块不就可以卸载了吗,注意了,你删了sys.module中的模块对象仍然可能被其他程序的组件所引用,因而不会被清楚。

特别的对于我们引用了这个模块中的一个类,用这个类产生了很多对象,因而这些对象都有关于这个模块的引用。

如果只是你想交互测试的一个模块,使用 importlib.reload(), e.g. import importlib; importlib.reload(modulename),这只能用于测试环境。

例子

aa.py

def func1():
  print('func1')

test.py

import time,importlib
import aa
time.sleep(10)
# importlib.reload(aa) 用于模块重新加载
aa.func1()

在10秒的等待时间里,修改aa.py中func1的内容,等待test.py的结果。

打开importlib注释,重新测试

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • DJANGO-URL反向解析REVERSE实例讲解

    DJANGO-URL反向解析REVERSE实例讲解

    在本篇文章里小编给大家整理的是一篇关于DJANGO-URL反向解析REVERSE的相关知识点内容,需要的朋友们学习下。
    2019-10-10
  • Keras预训练的ImageNet模型实现分类操作

    Keras预训练的ImageNet模型实现分类操作

    这篇文章主要介绍了Keras预训练的ImageNet模型实现分类操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • 浅谈tensorflow语义分割api的使用(deeplab训练cityscapes)

    浅谈tensorflow语义分割api的使用(deeplab训练cityscapes)

    这篇文章主要介绍了浅谈tensorflow语义分割api的使用(deeplab训练cityscapes),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • 用Python实现换行符转换的脚本的教程

    用Python实现换行符转换的脚本的教程

    这篇文章主要介绍了用Python实现换行符转换的脚本的教程,代码非常简单,包括一个对操作说明的功能的实现,需要的朋友可以参考下
    2015-04-04
  • Python使用matplotlib绘制正弦和余弦曲线的方法示例

    Python使用matplotlib绘制正弦和余弦曲线的方法示例

    这篇文章主要介绍了Python使用matplotlib绘制正弦和余弦曲线的方法,结合实例形式分析了Python调用matplotlib库进行图形绘制想具体操作技巧,需要的朋友可以参考下
    2018-01-01
  • python实现0到1之间的随机数方式

    python实现0到1之间的随机数方式

    这篇文章主要介绍了python实现0到1之间的随机数方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 如何通过python实现IOU计算代码实例

    如何通过python实现IOU计算代码实例

    这篇文章主要介绍了如何通过python实现IOU计算代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Python实现接口自动化测试的方法详解

    Python实现接口自动化测试的方法详解

    Python接口自动化测试是一种高效、可重复的软件质量验证方法,尤其在现代软件开发中,它已经成为不可或缺的一部分,本文将深入探讨如何使用Python进行接口自动化测试,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2024-08-08
  • Python-VTK批量读取二维切片并显示三维模型

    Python-VTK批量读取二维切片并显示三维模型

    这篇文章主要介绍了Python-VTK批量读取二维切片并显示三维模型,文章基于python的相关资料展开对主题的详细介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-04-04
  • python统计函数库scipy.stats的用法解析

    python统计函数库scipy.stats的用法解析

    今天小编就为大家分享一篇python统计函数库scipy.stats的用法解析,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02

最新评论