Python 如何对元组列表进行排序,使键是元组中值的总和?
如果减法相等,则应根据第二个元素对列表进行排序Python 如何对元组列表进行排序,使键是元组中值的总和?,python,Python,如果减法相等,则应根据第二个元素对列表进行排序排序(调用,key=lambda x:sum(x)) 我认为没有办法按照您的要求指定辅助排序参数,因此您必须对集合进行两次排序。首先按第二个元素的值对其排序,然后按总和再次排序。具有相同和的元素将保留第一个排序的顺序 编辑: 有一种方法可以指定多个排序键!您的lambda函数可以返回一个值元组。元组中的第一项是主排序键,第二项是辅助键,依此类推: sorted(调用,key=lambda x:(和(x),x[1])) 感谢@tzot的回答 我看不出你
排序(调用,key=lambda x:sum(x))
我认为没有办法按照您的要求指定辅助排序参数,因此您必须对集合进行两次排序。首先按第二个元素的值对其排序,然后按总和再次排序。具有相同和的元素将保留第一个排序的顺序
编辑:
有一种方法可以指定多个排序键!您的lambda
函数可以返回一个值元组。元组中的第一项是主排序键,第二项是辅助键,依此类推:
sorted(调用,key=lambda x:(和(x),x[1]))
感谢@tzot的回答 我看不出你问题的内容与标题有什么关系。是的,这是项目的差异,而不是总和。让你的
lambda
返回(和/差,秒值)
的元组<如果第一个元素相等,则代码>元组
排序将使用第二个元素。
b= sorted(calls,key=lambda x:x[0]-x[1] )