【发布时间】:2017-03-01 04:43:15
【问题描述】:
我有一个包含浮点数和两个自定义对象的元组列表:
ExampleList = [(10.5, Obj1, Obj2), (11.5, Obj1, Obj2), (14., Obj1, Obj2)]
然后我有一行代码将元组附加到该代码:
newTuple = (15,Obj1, Obj2)
ExampleList.append(newTuple)
我正在尝试找出一种干净的方法来添加以下类型的行:
如果 newTuple[0](浮点数)大于任何第二大元组浮点数,则追加它。否则没有。知道如何在元组列表上执行按元素的布尔运算吗?
编辑 - 抱歉,我的意思是添加第二大部分。
谢谢-KC
【问题讨论】:
-
您的列表是按数字排序的吗?第二大意味着
(13,xx)符合条件,但(11,xx)不符合条件,对吧? -
找到
ExampleList的第二大元素的代码是什么? -
不确定我是否理解正确。如果 newTuple[0] 大于 ExampleList 中的任何现有对应项,是否要添加 newTuple?
-
sorted(ExampleList)[-2][0]代表第二大 -
@Jean-FrançoisFabre - 是的,它是根据数字排序的。我正在运行一个大循环,仅记录前 5 个“结果”(也就是上面的浮点数)
标签: python