-2

我有列表l(x,y)成对:

print(l)
[(4.476784, 50.820377), (4.466914, 50.83413), (4.466898, 50.843526), (4.461776, 50.84864), (4.460908, 50.850731), (4.461256, 50.851948)...]

我想切换元素的位置;也就是说,从(x,y)(y,x)。我怎么能这样做?提前致谢。

4

2 回答 2

1

您可以使用列表理解来实现它:

l = [(4.476784, 50.820377), (4.466914, 50.83413), (4.466898, 50.843526), (4.461776, 50.84864), (4.460908, 50.850731), (4.461256, 50.851948)]

new_list = [x[::-1]  for x in l]

或者,

new_list = [(y, x)  for x, y in l]

在哪里new_list举行:

[(50.820377, 4.476784), (50.83413, 4.466914), (50.843526, 4.466898), (50.84864, 4.461776), (50.850731, 4.460908), (50.851948, 4.461256)]
于 2021-01-04T16:30:55.583 回答
1
[(y, x) for x, y in l]

元组是不可变的,所以你不能从字面上反转元组。

于 2021-01-04T16:31:09.860 回答