Python中給切片賦值

提問:
a = a + n和 a += n竟然有區(qū)別,能深入講一講嗎?
from copy import deepcopy
a = [1, 2, 3]
c = deepcopy(a)
b = a
a = a + [4, 5, 6]
print(f"{a = }")
print(f"{b = }")
d = c
c += [4, 5, 6]
print(f"{c = }")
print(f"{d = }")
因為a這個列表是可變類型的對象,改變了ac,按理說同一引用的bd會跟著改變,為什么會有區(qū)別,+=等同extend的效果,而 +不是。是否跟內(nèi)置的魔術(shù)方法__add__有關(guān)系
標簽: