x=[1,2,3]def f(x):x+=[4]f(x)print(x)和x=[1,2,3]def f(x):x=x+[4]f(x)print(x)有什么区别呢为什么两个输出不一样?
不是函数的问题,是list的问题,Python中list是可变变量。参考:https://blog.csdn.net/chenhyc/article/details/102668635
+=:是直接在变量上进行操作,修改的是原来的值=+:指向新的地址,不在修改原变量值