Python自定义排序规则:functools.cmp_to_k

2021-12-28  本文已影响0人  不懂球的2大业

1.为什么发现functools.cmp_to_key()

2.functools.cmp_to_key()是什么

3.functools.cmp_to_key()怎么用

import functools

def mycmp(x,y):
    if abs(x) > abs(y):
        return 1
    elif abs(x) < abs(y):
        return -1
    else:
        return 0

if __name__ == '__main__':
    arr = [1,0,-10,200,3,7]
    arr.sort(key=functools.cmp_to_key(mycmp))
    print(arr)
# 打印结果:[0, 1, 3, 7, -10, 200]
import functools

def mycmp(x,y):
    if -x > -y:
        return 1
    elif -x < -y:
        return -1
    else:
        return 0

if __name__ == '__main__':

    arr = [1,0,-10,200,3,7]
    arr.sort(key=functools.cmp_to_key(mycmp))
    print(arr)
# 打印结果:[200, 7, 3, 1, 0, -10]
上一篇 下一篇

猜你喜欢

热点阅读