【发布时间】:2017-05-18 05:10:09
【问题描述】:
我有以下脚本:
第一个是test1.py
x = 1
def test():
globx = x
print(globx)
globx += 1
return globx
x = test()
第二个是test2.py
import test1
z=3
while z != 0:
if __name__=='__main__':
test1.test()
z -= 1
else:
pass
我正在使用这些来学习和玩从其他脚本调用函数,我想要的是输出:
1
2
3
但我明白了:
1
2
2
2
当我更换
globx = x
print(globx)
globx += 1
return globx
x = test()
在test1.py 与
global x
print(x)
x += 1
我确实得到了想要的结果,但显然你不应该使用全局变量,所以我想改掉这个习惯。
我有 2 个问题。
- 为什么我得到错误的输出和
- 当我使用
globx = x版本的test1.py而不是3 个时,为什么会有4 个输出?
【问题讨论】:
标签: python function python-import