对于范围(0, 26)中的_,[[False] * 26]和[[False] * 26]有什么区别?



Python中的[[False] * 26] * 26][[False] * 26 for _ in range(0, 26)]有什么区别?

这一切都是关于混叠的。当您修改内部列表时,它会变得显而易见。

>>> a = [[False] * 26] * 26
>>> a[0][0] = True
>>> a[1][0]
True
>>> b = [[False] * 26 for _ in range(0, 26)]
>>> b[0][0] = True
>>> b[1][0]
False

最新更新