【问题标题】:Sort by sum and chop a list of tuples in Python在 Python 中按总和排序并切分元组列表
【发布时间】:2015-10-12 22:10:30
【问题描述】:

例如我需要列表 = [(0, 0), (0, 1), (0, 2), (0, 4), (1, 0), (1, 1), (1, 2), (1, 4)] 按每个元组的总和排序,例如 [(0, 0),(1, 0), (0, 1), (1, 1),(0, 2) , (1, 2), (0, 4), (1, 4)]。

(1,1) 与 (0,2) 的顺序无关紧要,但是元组的长度不同但长度相等。

然后将列表缩减为仅加起来等于或小于 4 的元组。例如
[(0, 0),(1, 0), (0, 1), (1, 1),(0, 2), (1, 2), (0, 4)]

排序后切碎的顺序不是必须的,但切碎后排序的结果应该是一样的。

【问题讨论】:

  • 这在许多语言中都非常简单。您正在使用什么,您尝试过什么?
  • 对不起,我用的是python,应该这么说。
  • sorted((x for x in lst if sum(x) <= 4), key=lambda x: sum(x))

标签: list sorting sum tuples


【解决方案1】:

这样的事情应该可以完成:

list.sort(key=sum)
while sum(list[-1])>4:
    list.pop()

有点晚了,但对于以后阅读本文的每个人来说。

【讨论】:

    猜你喜欢
    • 2018-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-25
    • 2014-05-11
    • 2022-01-21
    相关资源
    最近更新 更多