Python,按另一个列表对列表进行排序[重复]

发布于 2021-01-29 16:22:04

这个问题已经在这里有了答案

根据另一个列表中的值对列表进行排序? (15个答案)

去年关闭。

我有一个清单a

a = ['c','d','b','a','e']

和清单b

b = ['a001','b002','c003','d004','e005']

以及如何获取c以下列表:

c = ['c003','d004','b002','a001','e005']

基本上b使用每个元素的一部分,按照中定义的顺序进行排序a

非常感谢。

关注者
0
被浏览
151
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以尝试将一个lambda函数传递给内置函数的key参数sorted()

    a = ['c', 'd', 'B', 'a', 'e']
    b = ['a001', 'B002', 'c003', 'd004', 'e005']
    c = sorted(b, key = lambda x: a.index(x[0])) # ['c003', 'd004', 'b002', 'a001', 'e005']
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看