在 Python 中,可以使用
importlib
模块来动态加载和重新加载模块。
要动态加载模块,可以使用
importlib.import_module()
函数,它接受一个字符串参数,表示要加载的模块名称。例如:
import importlib
module = importlib.import_module('mymodule')
要重新加载已经加载的模块,可以使用 importlib.reload()
函数,它接受一个已加载的模块对象作为参数。例如:
import importlib
import mymodule
# 修改了 mymodule 的代码后,重新加载它
importlib.reload(mymodule)
如果您想重新加载所有已加载的模块,可以使用 sys
模块中的 modules
字典来遍历所有已加载的模块,并使用 importlib.reload()
函数重新加载它们。例如:
import importlib
import sys
for module_name, module in sys.modules.items():
importlib.reload(module)
需要注意的是,重新加载模块可能会引起一些副作用,例如修改了模块中的全局变量、函数等等。因此,在重新加载模块之前,请确保您理解这些副作用可能对您的应用程序产生的影响。