1

我对python完全陌生,我只是在尝试。有些事情让我困惑了好几个小时,直到我终于做了这个小测试。

我有 2 个脚本,a.py 和 b.py

#a.py 
num = 3 

#b.py 
import a 

print(a.num)

当 b.py 运行时,它会打印 3。但是如果我将 num 的值更改为任何其他数字,输出仍然是 3。

如何重新保存/更新我的脚本文件?

4

4 回答 4

1

要重新加载模块,imp.reload()请从imp模块中使用。见http://docs.python.org/3/library/imp.html#imp.reload

于 2013-07-18T08:12:54.270 回答
1

Python 只会在第一次导入模块时读取模块文件。所以你正在编辑的仍然是旧版本的导入对象。如果要重新加载模块,可以使用imp.reload. 如需更多说明,您可以阅读当我编辑导入的模块并重新导入它时,更改不会显示。为什么会这样?.

于 2013-07-18T08:18:12.447 回答
0

你怎么跑b.py?附带说明,在再次运行脚本之前删除 *.pyc 文件。

于 2013-07-18T08:16:38.340 回答
0
#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 更改为其他值。

但这是有线的,我建议不要这样做。

于 2013-07-18T08:22:45.303 回答