我有一个模块,可以帮助我进行代码和全局变量,以及在笔记本上的运行文件。我使用from my_module import *
导入它,并且可以工作。当我在模块上更改函数定义时,它们在笔记本上的autoreload
很好,但是当我在模块中更改它们时,我定义的全局变量不 - 我必须重新启动内核。
有没有办法为它们实现自动加载而不将它们放入功能或类中?
名为importlib
的模块允许访问导入内部。特别是,它提供功能importlib.reload()
。
import importlib
importlib.reload(my_module)
importlib.reload()
正确重新阅读模块并重置全局变量。
importlib
仅自Python 3.1以来可用。对于较旧版本,您必须使用模块imp
。