python3中sorted函數里關於cmp這一參數的改變


今天在刷leetcode的時候,對於179題返回最大數,用python2中的sorted(cmp)會很方便,但是在python3中這一參數被取消了,經過查找,發現應該借助functools中的cmp_to_key函數,直接貼代碼

import functools
def cmp(a,b):
    if a > b :
        return -1
    elif a < b :
        return 1
    else:
        return 0
        
nums = [1,2,3,4,5,6]
sorted_nums = sorted(nums, key = functools.cmp_to_key(cmp))

Out[30]: [6,5,4, 3, 2, 1]

但注意需要轉換的cmp函數的返回值必須是0, 1, -1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM