python 局部赋值规则

来源:互联网 发布:广州奕星中控软件 编辑:程序博客网 时间:2024/06/14 07:45
myVar= 27
def myFunction(param1=123,param2='hi mom'):
    localX=654.321
    print '\n ===local namespace ==='
    for key,val in locals().items():
        print 'key:%s,object:%s' % (key,str(val))
    print myVar
    myVar = myVar+1


    myFunction(123456,765432.0)


 ===local namespace ===
key:localX,object:654.321
key:param1,object:123456
key:param2,object:765432.0


Traceback (most recent call last):
  File "<pyshell#114>", line 1, in <module>
    myFunction(123456,765432.0)
  File "C:/Python27/hrwfh.py", line 8, in myFunction
    print myVar
UnboundLocalError: local variable 'myVar' referenced before assignment
>>> 
0 0