我有这个简单的Python脚本,myvar1
是generate()
函数访问,但不是在copy()
功能。需要帮助找出错误:错误的python脚本
#!/usr/bin/python
import os, time
def Test(tcid,descr,iterations,filsz):
def setup():
print "entering set up\n"
global myvar1, myvar2
myvar1 = 1.0
myvar2 = os.getcwd()
def generate():
print "entering generate\n"
print "in generate", myvar1, myvar2
def copy():
print "in copy", myvar1, myvar2
myvar1 += 5.0
setup()
generate()
for loopcount in range(5):
loopcount = loopcount + 1
copy()
if __name__ == "__main__":
Test('test','simple test',2,10)
错误:
回溯(最近通话最后一个): 文件 “./pyerror.py” 35行,在 测试( '测试',”简单测试',2,10) 文件“./pyerror.py”,第30行,在测试中 copy() 文件“./pyerror.py”,第20行,副本 print“in copy”,myvar1 ,myvar2 UnboundLocalError:局部变量 'myvar1' 分配之前引用
只有当_assigning_给变量时,Python范围问题的可能重复(http://stackoverflow.com/questions/2886932/python-scope-problems-only-when-assigning-to-a-variable) – 2011-01-22 00:02:29