2013-07-18 124 views
1

我对python完全陌生,我只是试一试。有些事情让我困惑了好几个小时,直到我终于做出这个小测试。脚本:更新脚本

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

#a.py 
num = 3 

#b.py 
import a 

print(a.num) 

当b.py是跑步,这种打印3.但如果我num的值更改为任何其他数,输出是仍然3.

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

+0

是的,你可以保存你的文件 - 你必须在再次运行你的脚本之前做到这一点。 – danodonovan

回答

1

Python只会在第一次导入模块时读取模块文件。因此,您正在编辑的内容仍然是导入对象的旧版本。如果你想重新加载一个模块,你可以使用imp.reload。欲了解更多信息,您可以阅读When I edit an imported module and reimport it, the changes don’t show up. Why does this happen?

+0

因此在我的项目开发过程中,我必须在导入的模块中包含imp.reload?并在项目完成后将其删除?这是一件麻烦事。 – tambalolo

+0

如果你想重新加载,你必须。或者您必须终止当前的脚本,更新导入的模块并再次运行脚本。但我认为这个数字应该是一个固定的数字,你不必在文件中改变它,但当你需要逻辑时改变它。 – zhangyangyu

+0

上面的代码只是一个示例。我正在谈论发展真正的项目。但是不要紧。 – tambalolo

0

如何运行b.py?作为附注,请在再次运行脚本之前删除* .pyc文件。

+0

通过运行脚本按钮。什么是pyc文件?我可以在哪里找到它们?对不起。我刚开始使用脚本。 – tambalolo

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。

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