在Python面向物件程式設計中,cmp()函式的作用是什麼?
cmp()函式
cmp(x,y) 函式比較兩個引數 x 和 y 的值:
cmp(x, y)
返回值為:
如果 x 小於 y,則為負數。
如果 x 等於 y,則為零。
如果 x 大於 y,則為正數。
內建的 cmp() 函式通常只返回 -1、0 或 1。但是,其他地方也需要具有相同呼叫順序的函式,這些函式可能會返回其他值。最好只觀察結果的符號。
>>> cmp(2,8) -1 >>> cmp(6,6) 0 >>> cmp(4,1) 1 >>> cmp('stackexchange', 'stackoverflow') -1
cmp() 方法比較兩個列表的元素。
語法
cmp(list1, list2)
如果元素型別相同,則執行比較並返回結果。如果元素型別不同,則檢查它們是否為數字。
如果是數字,則根據需要執行數值強制轉換並進行比較。
如果任一元素是數字,則另一個元素“更大”(數字“最小”)。
否則,按名稱按字母順序對型別進行排序。
如果到達其中一個列表的末尾,則較長的列表“更大”。如果我們遍歷兩個列表並且資料相同,則結果為平局,這意味著返回 0。
示例
以下示例顯示了 cmp() 方法的用法。
list1, list2 = [456, 'xyz'], [789, 'abc'] print cmp(list1, list2) print cmp(list2, list1) list3 = list2 + [896]; print cmp(list2, list3)
輸出
執行上述程式時,會產生以下結果:
-1 1 -1
廣告