【发布时间】:2019-02-10 01:00:27
【问题描述】:
为什么不能在下面更新第一个元素而是整列?
>>> x=2*[2*[1]]
>>> x
[[1, 1], [1, 1]]
>>> x[0][0]=2
>>> x
[[2, 1], [2, 1]]
【问题讨论】:
标签: python list repeat multiplication assign
为什么不能在下面更新第一个元素而是整列?
>>> x=2*[2*[1]]
>>> x
[[1, 1], [1, 1]]
>>> x[0][0]=2
>>> x
[[2, 1], [2, 1]]
【问题讨论】:
标签: python list repeat multiplication assign
即使这是一个明显的重复,但请使用range:
>>> x=[[1 for i in range(2)] for x in range(2)]
>>> x
[[1, 1], [1, 1]]
>>> x[0][0]=2
>>> x
[[2, 1], [1, 1]]
>>>
至少还能做到:
>>> x=[[1]*2 for x in range(2)]
>>> x[0][0]=2
>>> x
[[2, 1], [1, 1]]
>>>
【讨论】: