I thought I had the whole list alias thing figured out, but then I came across this:
l = [1, 2, 3, 4]
for i in l:
i = 0
print(l)
which results in:
[1, 2, 3, 4]
So far so good.
However, when I tried this:
l = [[1, 2], [3, 4], [5, 6]]
for i in l:
i[0] = 0
I get
[[0, 2], [0, 4], [0, 5]]
Why is this?
Does this have to do with how deep aliasing goes?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…