我对参数如何传递给函数及其可变性有疑问,尤其是在列表的情况下。
考虑以下...
def add_list(p):
p = p + [1]
def append_list(p):
p.append(1)
p = [1, 2, 3]
add_list(p)
print p
append_list(p)
print p
我得到的输出是......
[1, 2, 3]
[1, 2, 3, 1]
为什么在函数中追加原始列表时会更改,但使用运算符 + 时不会更改?