小编典典

Python,按另一个列表对列表进行排序

python

我有一个清单a

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

和清单b

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

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

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

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

非常感谢。


阅读 222

收藏
2021-01-20

共1个答案

小编典典

您可以尝试将一个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']
2021-01-20