本页内容

Python3 reload() 函数

Python 内置函数

描述

reload() 用于重新载入之前载入的模块。

在 Python2.x 版本中 reload() 是内置函数,可以直线使用,参见 Python2.x reload() 函数。在 Python2.x ~ Python3.3 版本移到 imp 包中(Python2.x 也可以导入 imp 包使用),Python3.4 之后到版本移到了 importlib 包中。

语法

Python2.x ~ Python3.3 之前版本:


示例

import imp
imp.reload(module)


示例

from imp import reload
reload(module)

Python3.4 之后到版本


示例

import importlib
importlib.reload(module)


示例

from importlib import reload
reload(module)

参数

  • module -- 模块对象。

返回值

返回模块对象。

以下实例展示了 reload() 的使用方法。

实例 1

重新载入 sys 模块

示例

>>> import sys, importlib

>>> importlib.reload(sys)

<module 'sys' (built-in)>

实例 2

首先我们在当前目录下创建一个 xiaobai.py :

xiaobai.py 文件

示例

# xiaobai.py 文件测试代码
site = "XiaoBai.Wang"

在当前目录下启动 Python 交互式命令窗口:


示例

>>>import xiaobai
>>> xiaobai.site
'XiaoBai.Wang'

然后在另外一个窗口编辑 xiaobai.py 文件(不要关闭以上的 Python 交互式命令窗口),修改为以下代码:

修改后的 xiaobai.py 文件

示例

# xiaobai.py 文件测试代码
site = "GOOGLE"

然后回到 Python 交互式命令窗口:


示例

>>> xiaobai.site    # 输出结果没有变化

'XiaoBai.Wang'

>>> from importlib import reload  # Python 3.4+

>>> reload(xiaobai)    # 重新载入修改后的 xiaobai.py 文件

<module 'xiaobai' from '/Users/XiaoBai.Wang/xiaobai-test/xiaobai.py'>

>>> xiaobai.site    # 输出结果正常了

'GOOGLE'

Python 内置函数

此页面最后编辑于2022年8月17日 (星期三) 21:50。