我有一个值字典,我想根据自己定义的比较对其进行排序。我知道你不会整理字典。以下是重要代码:def cmpFirstVals(tup1,tup2):
if tup1[0] > tup2[0]:
return True
else:
return False
def cmpSecondVals(tup1,tup2):
if tup1[1] > tup2[1]:
return True
else:
return False
所以这两个比较函数接受两个int的两个元组。它比较两个元组,如果第一个元组更高,则返回true;如果使用第二个比较器,则(0,4)将高于(0,3)。同样
^{pr2}$
会返回True。在
我的dict是用字符串作为键和两个int元组作为值构建的:d = {'objA':(1,12),'objB':(13,3)} //etc etc etc
我知道可以对list d.items()进行排序,我最终会用排序后的列表中的前三项构造dict,但是我需要使用这些比较器进行排序。在
我需要知道如何通过这些比较器进行排序?在
另外,请注意,如果两个元组的索引值相同,则比较器将返回false。(即cmpFirstVals((4,2),(4,3))将返回false)