按两个字段对Python列表进行排序

发布于 2021-02-02 23:16:50

我有一个从排序的csv创建的以下列表

list1 = sorted(csv1, key=operator.itemgetter(1))

我实际上想按两个条件对列表进行排序:首先按字段1中的值,然后按字段2中的值。我该怎么做?

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

    像这样:

    import operator
    list1 = sorted(csv1, key=operator.itemgetter(1, 2))
    


  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    使用lambda函数时无需导入任何内容。
    以下list按第一个元素排序,然后按第二个元素排序。

    sorted(list, key=lambda x: (x[0], -x[1]))
    


知识点
面圈网VIP题库

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

去下载看看