【问题标题】:Sort sublists in a list, Python [duplicate]对列表中的子列表进行排序,Python [重复]
【发布时间】:2017-07-28 18:19:18
【问题描述】:

我在 Python 中有以下列表直到 n:

l = [[x_1,y_1,h_1,w_1], [x_2,y_2,h_2,w_2], ..., [x_n,y_n,h_n,w_n]] 

并且我需要根据子列表(x_i 和 h_i)中第一个和第三个元素的总和对它进行降序排序,然后获取前 n 个子列表。

我设法通过将总和存储在一个新列表中来做到这一点,但是有没有一种有效的方法可以在不创建列表的情况下对其进行排序?

编辑:对不起,这确实是一个重复的问题。

【问题讨论】:

  • 也许有一个真实的例子(和实际数字)你的问题会更清楚。
  • 好的,所以现在您的问题只是“如何按标准排序”。不是很原始......(和重复)
  • 非常感谢,抱歉重复了!
  • 至少你承认它是重复的。不是每个人都这样做:)

标签: python sorting


【解决方案1】:

您可以使用可以定义的特定键对列表进行排序:

l.sort(key=lambda x: x[0] + x[2])

【讨论】:

  • 非常感谢!这有帮助
【解决方案2】:

转到下面的链接,查看如何在 python 中排序的完整详细信息

sorting in python

 a = sorted(l, key=lambda x: x[0] + x[2])

【讨论】:

    猜你喜欢
    • 2013-08-11
    • 2015-11-14
    • 1970-01-01
    • 1970-01-01
    • 2014-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    相关资源
    最近更新 更多