0
가능한 중복 :
What is the difference between LIST.append(1) and 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
I는 얻을 출력 ... ... 다음 사항을 고려
[1, 2, 3]
[1, 2, 3, 1]
이유는 함수에에 추가 원래 목록 변경을 수행하지만 변경되지 않습니다 연산자를 사용하면 +?
mutating을 추가합니다. 사본 추가. –
짧은 답변 :'append()'는 ** in-place ** 목록을 변경하고'+'는 새 목록을 반환하지만 원래 목록에는 전혀 영향을 미치지 않습니다. –