【python比較兩個列表list】 python2 cmp() python3 operator模塊


https://www.yiibai.com/python/list_cmp.html

 

  • 如果元素的類型相同,則執行比較並返回結果。如果元素是不同的類型,則檢查它們是否是數字。
    • 如果數字,必要時進行數字強制比較。
    • 如果任一元素是數字,則另一個元素是“較大的”(數字值“最小”)。
    • 否則,類型按名稱按字母順序排序。

如果到達其中一個列表的末尾,則較長的列表是“較大的”。 如果排除兩個列表並共享相同的數據,結果返回0
如果 list1 < list2 返回 -1, 如果 x == y 返回 0, 如果 list > list2 返回 1

示例

以下示例顯示了cmp()方法的用法。

#!/usr/bin/python3 list1, list2 = [123, 'xyz'], [456, 'abc'] print cmp(list1, list2) print cmp(list2, list1) list3 = list2 + [786]; print cmp(list2, list3) 
Python

當運行上面的程序,它產生以下結果 -

-1
1
-1
Shell

注意:在python3中,不能使用這個函數

查看python的幫助文檔,在oprater這個模塊中有了這么幾個函數 -

operator.lt(a, b) operator.le(a, b) operator.eq(a, b) operator.ne(a, b) operator.ge(a, b) operator.gt(a, b) operator.__lt__(a, b) operator.__le__(a, b) operator.__eq__(a, b) operator.__ne__(a, b) operator.__ge__(a, b) operator.__gt__(a, b) 
Python

這幾個函數就是用來替換之前的cmp(),之前使用cmp的同胞們,以后就換上面這些函數。
下面簡單說下這幾個函數的意思 -

lt(a, b) 相當於 a < b
le(a,b) 相當於 a <= b
eq(a,b) 相當於 a == b
ne(a,b) 相當於 a != b
gt(a,b) 相當於 a > b
ge(a, b)相當於 a>= b

原文出自【易百教程】,商業轉載請聯系作者獲得授權,非商業轉載請保留原文鏈接:https://www.yiibai.com/python/list_cmp.html


免責聲明!

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



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