main.py:
from module import *
var=10
def func2():
print "func2:" ,var
def main():
global var
var=20
print "main - before", var
func2()
func1()
print "main - after", var
if __name__=='__main__':
main()
module.py
from main import *
def func1():
global var
print "func1:", var
程序输出:
"var"是全局变量。我期望一旦我改变"var"的值,它会在任何出现"var"变量的地方被改变。func1和func2唯一的区别就是func1在另一个模块中。仍然不明白为什么"var"的值在func1和func2之间不同。main - before: 20
func2: 20
func1: 10
main - after 20