基于Python2, Python3中重载()的不同用法介绍

  

<强>重载()简介

  

作用:用于重新载入之前载入的模块

  

语法格式:重载(模块)

  

参数:模块为模块对象,必须已经被加载

  

返回值:返回模块对象

  

<强>注意事项:

  

多次重复使用导入语句时,不会重新加载被指定的模块,只是把对该模块的内存地址给引用到本地变量环境。

  

重载()会重新加载已加载的模块,重新编译模块,重新执行模块级代码,但是__init__函数不再重复执行,原来已经使用的实例还是会使用旧的模块,而新生产的实例会使用新的模块,重载后还是用原来的内存地址;不支持从…进口…格式的模块进行重新加载。

  

大部分模块设计为只加载一次,重新加载可能导致一些问题,因此,慎用重载()。

  

使用sys.modules可查看已加载的模块。

  

  

在Python2中,重载()为内置函数。

  

例:重设字符编码

        在祝辞祝辞导入系统   在在在sys.getdefaultencoding() #当前默认编码   “ascii”   在在在重载(sys) #使用重载   & lt;模块“sys”(内置)比;   在在在sys.setdefaultencoding (use utf8) #设置编码   在在在sys.getdefaultencoding ()   “use utf8”   在祝辞祝辞      

  

在Python3中,重载()被转移到小鬼模块以及importlib模块中。

  

Python3.4之前在小孩中,Python3.4之后小鬼模块逐步被废弃,重载()移至importlib模块中。

        在在在导入系统   在在在重载(系统)   回溯(最近的电话):   文件“& lt; stdin>”,1号线& lt; module>   NameError:名字“重载”没有定义   在在在从加强进口重新加载   __main__: 1: DeprecationWarning:小鬼模块支持importlib弃用;   看到这个模块的文档替代使用   在在在重载(系统)   & lt;模块“sys”(内置)比;   在在在从importlib进口重新加载   在在在重载(系统)   & lt;模块“sys”(内置)在      

以上这篇基于Python2, Python3中重载()的不同用法介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

基于Python2, Python3中重载()的不同用法介绍