重複の可能性:
LIST.append(1) と LIST = LIST + [1] の違いは何ですか (Python)
特にリストの場合、パラメーターが関数に渡される方法とその可変性に疑問があります。
次のことを検討してください...
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]
関数で追加すると元のリストが変更されるのに、演算子 + を使用すると元のリストが変更されないのはなぜですか?