91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中sort()方法的cmp參數是什么

發布時間:2022-03-05 11:12:55 來源:億速云 閱讀:363 作者:小新 欄目:web開發

小編給大家分享一下python中sort()方法的cmp參數是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

“如果希望元素能按照特定的方式進行排序(而不是sort函數默認的方式,即根據python的默認排序規則按升序排列元素),那么可以通過compare(x,y)的形式自定義比較函數。

compare(x,y)函數會在x<y時返回負數,在x>y時返回正數,如果x=y則返回0(根據你的定義)。

定義好該函數之后,就可以提供給sort方法作為參數了。內建函數cmp提供了比較函數的默認實現方式:

對于sort()方法,如果不傳入參數,默認cmp為None,即numbers.sort()=number,sort(cmp)=number.sort(cmp=None),我們可以做一個驗證:

如果傳入參數,numbers.sort(cmp=1),我們可以驗證一下,整型的參數可不可以:

代碼報錯:int對象不是一個callable,可調用對象。callable(object) 方法用來檢測對象是否可被調用,即是否是一個函數,如果是則調用該函數的值,賦值給cmp。

那么我們如何自定義一個比較函數呢?

其中的規律就是:兩兩比較,如果返回為正,則交換兩者的位置,即y在前x在后,否則x在前y在后。也可以這樣解釋,升序就是拿第一個數比對后面的數,降序就是拿最后一個數比對前面的數。

當然,也可以寫作numbers.sort(mycmp1),省略cmp。

我們還可以直接穿入匿名函數lambda:

另外,python3.x中取消了cmp參數,也不支持直接往sort()里面傳函數,但可以構造排序函數傳遞給key來實現。

以上是“python中sort()方法的cmp參數是什么”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

万宁市| 渭南市| 崇州市| 霸州市| 大兴区| 花莲县| 达州市| 台州市| 青海省| 章丘市| 深水埗区| 平潭县| 桃园县| 六安市| 遵义县| 社会| 抚松县| 紫金县| 广河县| 高清| 深州市| 乌兰察布市| 榕江县| 巫山县| 应城市| 仁寿县| 建阳市| 四平市| 皋兰县| 历史| 永福县| 监利县| 鄂托克前旗| 阜新市| 固原市| 汶上县| 文水县| 宜宾县| 石嘴山市| 明光市| 达州市|