我对python完全陌生,我只是在尝试。有些事情让我困惑了好几个小时,直到我终于做了这个小测试。
我有 2 个脚本,a.py 和 b.py
#a.py
num = 3
#b.py
import a
print(a.num)
当 b.py 运行时,它会打印 3。但是如果我将 num 的值更改为任何其他数字,输出仍然是 3。
如何重新保存/更新我的脚本文件?
要重新加载模块,imp.reload()
请从imp
模块中使用。见http://docs.python.org/3/library/imp.html#imp.reload
Python 只会在第一次导入模块时读取模块文件。所以你正在编辑的仍然是旧版本的导入对象。如果要重新加载模块,可以使用imp.reload
. 如需更多说明,您可以阅读当我编辑导入的模块并重新导入它时,更改不会显示。为什么会这样?.
你怎么跑b.py
?附带说明,在再次运行脚本之前删除 *.pyc 文件。
#a.py
num = 3
#b.py
import a
print(a.num) # result is 3
a.num += 1
print(a.num) # result is 4
下次你运行 b.py 时,结果是一样的。
因为 a.num 始终初始化为 3,所以您可能需要更新原始 a.py 文件以将 3 更改为其他值。
但这是有线的,我建议不要这样做。