1

如果我没有将它们放在一个数组中,我总是可以更改 bwtween 列表...

如果我有一个包含多个列表的数组

 a = [[2,3,4,],[8,14,13],[12,54,98]]

我该如何a[2]替换a[0]??

提前致谢

4

4 回答 4

2

列表是可变的,因此您可能想要替换列表项,而不是列表本身:

a[2][:] = a[0]

如果您想交换列表而不是替换它们,那么:

a[0], a[2] = a[2], a[0]
于 2012-08-22T15:24:30.477 回答
1

对于您的原始帖子:

a = [[2,3,4,],[8,14,13],[12,54,98]]
a[2] = a[0]

那么a将是:

[[2, 3, 4], [8, 14, 13], [2, 3, 4]] 

根据以下对 sdolan 的评论进行更新:

如果你想交换两者,你可以简单地这样做:

a[0], a[-1] = a[-1], a[0]

给予

[[12, 54, 98], [8, 14, 13], [2, 3, 4]]
于 2012-08-22T15:17:18.563 回答
1

您可以分配它:

>>> a = [[2,3,4,],[8,14,13],[12,54,98]]
>>> 
>>> a[2] = list(a[0]) # list() to create a new copy
>>> a
[[2, 3, 4], [8, 14, 13], [2, 3, 4]]
于 2012-08-22T15:17:22.957 回答
0

你问这个的方式是将数组从更改 a = [[2,3,4,],[8,14,13],[12,54,98]]a = [[2,3,4,],[8,14,13],[2,3,4,]]

所以你可以做a[2] = a[0]

但如果你想交换它们,你将需要类似的东西:

b = a[0]
a[0] = a[2]
a[2] = b

编辑速记:

a[0], a[2] = a[2], a[0]

于 2012-08-22T15:18:55.280 回答