我不太明白以下两个相似代码之间的区别:
def y(x):
temp=[]
def z(j):
temp.append(j)
z(1)
return temp
Run Code Online (Sandbox Code Playgroud)
调用y(2)返回[1]
def y(x):
temp=[]
def z(j):
temp+=[j]
z(1)
return temp
Run Code Online (Sandbox Code Playgroud)
调用y(2)返回UnboundLocalError: local variable 'temp' referenced before assignment.为什么+运算符会生成错误?谢谢