最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python3 sort和sorted用法+cmp_to_key()函數(shù)詳解

 更新時間:2023年07月25日 14:19:28   作者:wiidi  
這篇文章主要介紹了Python3 sort和sorted用法+cmp_to_key()函數(shù)詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Python3 sort和sorted用法+cmp_to_key()函數(shù)

在python3中沒有cmp函數(shù)

sort詳情:

>>> a = [1,2,1,4,3,5]
>>> a.sort()
>>> a
[1, 1, 2, 3, 4, 5]
>>> a = [1,2,1,4,3,5]
>>> sorted(a)   #生成一個新的list,原來的list  a 不變
[1, 1, 2, 3, 4, 5]
>>> a
[1, 2, 1, 4, 3, 5]
import sys
from functools import cmp_to_key
def cmp_new(x,y):
    if (x+y)>(y+x):
        return 1
    elif (x+y)<(y+x):
        return -1
    else :
        return 0
n=input()
s=input().split()
s.sort(key=cmp_to_key(cmp_new),reverse=True)
print(''.join(s).lstrip("0"))
#或者如下
s_new = sorted(s,cmp_to_key(cmp_new),reserve=True)
print(''.join(s_new).lstrip("0"))

一句話理解cmp_to_key函數(shù)

主要是因為python3不支持比較函數(shù),在一些接受key的函數(shù)中(例如sorted,min,max,heapq.nlargest,itertools.groupby),key僅僅支持一個參數(shù),就無法實現(xiàn)兩個參數(shù)之間的對比,采用cmp_to_key 函數(shù),可以接受兩個參數(shù),將兩個參數(shù)做處理,比如做和做差,轉(zhuǎn)換成一個參數(shù),就可以應(yīng)用于key關(guān)鍵字之后。

舉個例子

from functools import cmp_to_key 
L=[9,2,23,1,2]
sorted(L,key=cmp_to_key(lambda x,y:y-x))
輸出:
[23, 9, 2, 2, 1]
sorted(L,key=cmp_to_key(lambda x,y:x-y))
輸出:
[1, 2, 2, 9, 23]

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

离岛区| 山阳县| 拉萨市| 青川县| 洛扎县| 连南| 文安县| 北辰区| 民勤县| 安龙县| 仙居县| 军事| 建平县| 东港市| 鄯善县| 清苑县| 岗巴县| 义马市| 商都县| 越西县| 松江区| 尼木县| 泰和县| 石嘴山市| 湖南省| 阿克苏市| 万源市| 上高县| 永胜县| 宜丰县| 定边县| 桓台县| 青川县| 景谷| 文成县| 昌都县| 车险| 星子县| 剑阁县| 且末县| 北宁市|