开发者社区> 问答> 正文

使用另一个列表对列表进行排序

我现在正在处理Processing 3的python模块,但这是一个更普遍的python问题,因为我所看到的所有文档都是如何从列表中的某些内容排序列表而不是外部列表。

listKey = [0,2,9,1,3]

listToSort = [11,12,15,2,8]
预期成绩

[11,2,12,8,15]

展开
收起
一码平川MACHEL 2019-01-22 10:48:31 1736 0
1 条回答
写回答
取消 提交回答
  • 试试这个:

    list(zip(*sorted(enumerate(listToSort), key=lambda t: listKey[t[0]]))[1])
    [11, 2, 12, 8, 15]

    这列举listToSort了易于索引; 使用与listKey排序键相同的索引项,然后删除索引部分,使其仅以排序列表结束。

    2019-07-17 23:26:10
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载