【发布时间】:2016-03-12 21:25:48
【问题描述】:
我不太明白下面两个类似代码的区别:
def y(x):
temp=[]
def z(j):
temp.append(j)
z(1)
return temp
调用y(2) 返回[1]
def y(x):
temp=[]
def z(j):
temp+=[j]
z(1)
return temp
调用y(2) 返回UnboundLocalError: local variable 'temp' referenced before assignment。为什么+ 运算符会生成错误?谢谢
【问题讨论】: