使用 cmp 函数获取两个对象的比较结果

Python 2 包含一个 cmp 函数,它允许你确定一个对象是否小于,等于或大于另一个对象。此功能可用于根据这三个选项之一从列表中选择一个选项。

假设你需要打印'greater than'如果 x > y'less than'如果 x < y'equal'如果 x == y

['equal', 'greater than', 'less than', ][cmp(x,y)]

# x,y = 1,1 output: 'equal'
# x,y = 1,2 output: 'less than'
# x,y = 2,1 output: 'greater than'

cmp(x,y) 返回以下值

对照 结果
x <y -1
x == y 0
x> y 1

在 Python 3 中删除了此函数。你可以使用位于 Python 3 中的 functools 中的 cmp_to_key(func) 辅助函数将旧的比较函数转换为关键函数。