链接两个列表

2024-03-29 00:07:17 发布

您现在位置:Python中文网/ 问答频道 /正文

如何链接这两个列表,以便在一个列表更改时(顺序) 另一份清单如下,编号相同

List2=[5,4,3,2,1]
List3=[2,4,6,8,10]

更改list2和预期输出的顺序

List2=[1,2,3,4,5]
List3=[10,8,6,4,2]

但是list2的顺序每次都会改变,但总是需要改回1-5

(Python 3.6版)


Tags: 列表顺序链接编号list2list3
2条回答
List2=[5,4,3,2,1]
List3=[2,4,6,8,10]

“更简单”的方法是为dict3编一本字典,然后在重做list 2之后使用它。像这样:

# Pair the lists
List3 = dict(zip(List2,List3))

# Remake List2
List2 = sorted(List2)

# Remake List3 based on List2
List3 = [List3[key] for key in List2]

List3

退货:

[10, 8, 6, 4, 2]

定义一个小的helper函数,根据其中一个对两个列表进行排序。你知道吗

def revert(a, b):
    a, b = map(list, zip(*sorted(zip(a, b), key=lambda x: x[0])))
    return a, b

现在,在需要时调用这个函数。你知道吗

List2, List3 = revert(List2, List3)

相关问题 更多 >