亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

雷山县| 卢氏县| 高要市| 苏尼特左旗| 楚雄市| 科尔| 大方县| 东源县| 闽清县| 台东县| 呼图壁县| 湖北省| 邳州市| 黄陵县| 安溪县| 康马县| 杂多县| 黄山市| 南召县| 建水县| 黄大仙区| 绥化市| 日喀则市| 梨树县| 胶州市| 邛崃市| 措美县| 托克逊县| 宁城县| 鄂尔多斯市| 绥中县| 巢湖市| 闸北区| 宁河县| 澎湖县| 麟游县| 绥芬河市| 兴义市| 大田县| 永清县| 兴业县|