我在docs中得到它,我可以使用cmp_to_key将旧样式比较从python2转换为关键函数,例如在python3中,但我不知道究竟返回了什么。例如:
def my_cmp(a, b):
if(a == b):
return 0
elif(a < b):
return -1
else:
return 1
my_key_fn = functools.cmp_to_key(my_cmp)
然后每当我在任何数字上调用my_key_fn时,结果就是新函数的地址,每个调用都有一个新地址。例如:
In [49]: my_key_fn(1)
Out[49]: <functools.KeyWrapper at address...>
我认为返回值会给我一些可以用作排序键的值。为什么我得到一个功能包装器?