因此,我正在使用一些预先存在的比较器来比较两个元组中的某些值,如果第一个大于第二个则返回true,否则返回false。下面是其中的一个代码:使用比较函数进行排序
def cmpValue(subInfo1, subInfo2):
"""
Returns True if value in (value, work) tuple subInfo1 is GREATER than
value in (value, work) tuple in subInfo2
"""
# TODO...
if subInfo1[0] > subInfo2[0]:
return True
else:
return False
现在,我有了上述比较的类型众多的元组项目的字典。我想按相反的顺序对它们进行排序,但我并不真正了解如何实现这一目标。我的想法是这样的:
sortedDict = sorted(subjects, key=comparator, reverse = True)
但我不知道该怎么进入比较,因为每个比较器有两个参数(subInfo1,subInfo2)。 我无法更改比较器功能。
比较功能在Python中不推荐使用;改用键功能。 –
'if condition:return True else:return False' should''return condition'。 –
词典不保存顺序。如果你想要一个已排序的字典,你应该使用集合模块中的OrderedDict。 – Matt