当导入一个模块时, 模块中的代码都会被执行. 如果再次导入这个模块,则不会再次执行 者为什么这么设计?因为导入模块更多的时候需要的是定义模块中的变量、函数、对象等. 这些并不需要反复定义和执行.“只导入一次 import-only-once ”就成了一种优化. 参考设计模式的单例模式思想核心: 一个模块无论导入多少次,这个模块在整个解释器进程内有且仅有一个实例对象(单例)
重新加载有时候我们确实需要重新加载一个模块,这时候可以使用:importlib.reload()
方法
实操代码
# mypy14_module_load.py
print("当前模块被加载了...")
# mypy14_test.py
import mypy14_module_load # 不会再执行test02模块中的语句
import mypy14_module_load # 会执行test02模块中的语句
print("####")
import importlib
importlib.reload(mypy14_module_load) # 有时候我们确实需要重新加载一个模块,这时候可以使用:importlib.reload() 方法:
全部0条评论
快来发表一下你的评论吧 !