[[False] * 26] * 26]和[[False] * 26之间的区别(0,26)中_的区别是什么?

时间:2015-02-12 11:10:03

标签: python list

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

1 个答案:

答案 0 :(得分:1)

这一切都与别名有关。修改内部列表时会很明显。

>>> 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