① python集合的運算(交集、並集、差集、補集)
我們在遇到一些問題的時候,使用集合的交集、並集和差集能夠更便捷的幫助我們去解決問題,看下面一個例子。
某學校有兩個班級,班級A需要學習數學、語文、英語、物理、化學和生物,班級B需要學習數學、語文、英語、政治、地理和歷史。
我們可以直接看出A班級和B班級的交集為數學、語文和英語,並集為數學、語文、英語、物理、化學、生物、政治、地理、歷史,A和B的差集為物理、化學和生物。
那麼怎麼使用Python去完成這些運算?
我們先在這里定義兩個集合,
因為是求交集,因此A和B的位置調換依然不影響結果。
使用集合求並集的方式同樣也是兩種方式,一種是使用 『|』 運算符進行操作,一種是使用 union() 方法來實現。
求並集的時候同樣不需要注意 A 和 B 的位置關系。
使用集合求差集的方式同樣也是兩種方式,一種是使用 『-』 運算符進行操作,一種是使用 difference() 方法來實現。
在方法2中注意 A 和 B 的位置不同的時候是有區別的,如果是 A 使用 difference() 方法,那麼是輸出 A 中有而 B 中沒有的元素,如果是 B 使用 difference() 方法,那麼是輸出 B 中有而 A 中沒有的元素。
學習完了集合,四種核心集合我們已經基本掌握,接下來幾節我們來通過學習一些字元串的相關操作,學習字元串的過程中會穿插著前面簡單介紹過但沒仔細講解的方法及操作。
② 全面理解Python集合
Python中的集合是一組無序、不可重復元素序列,類似於數學中的集合概念。以下是關於Python集合的全面理解:
一、集合的基本特性 無序性:集合中的元素沒有固定的順序。 唯一性:集合中的元素必須是獨一無二的,不允許有重復元素。 不可變性要求:集合中的元素必須是不可變類型,如整數、浮點數、字元串、元組等,不能是列表、字典等可變數據類型。
二、集合的創建 可以使用大括弧 { } 創建集合,但注意空集合必須使用 set 函數創建,因為 { } 用於創建空字典。 例如:my_set = {1, 2, 3} 或 empty_set = set。
三、集合的常用方法1. add:向集合中添加一個元素,如果該元素已存在,則不執行任何操作。2. clear:移除集合中的所有元素。3. :復制集合,返回一個新的集合。4. difference:返回集合的差集,即包含在第一個集合中但不在第二個集合中的元素。5. difference_update:直接在原集合中移除兩個集合中都存在的元素。6. discard:移除集合中指定的元素,如果該元素不存在,則不執行任何操作。7. intersection:返回兩個或多個集合的交集。8. intersection_update:在原始集合上移除不重疊的元素,只保留交集部分。9. isdisjoint:判斷兩個集合是否沒有交集。10. issubset:判斷一個集合是否是另一個集合的子集。11. issuperset:判斷一個集合是否包含另一個集合的所有元素。12. pop:隨機移除集合中的一個元素並返回。13. remove:移除集合中指定的元素,如果該元素不存在,則拋出異常。14. symmetric_difference:返回兩個集合的對稱差集,即兩個集合中不相同的元素。15. symmetric_difference_update:用另一個集合的對稱差集更新當前集合。16. union:返回兩個或多個集合的並集。17. update:用另一個集合或多個集合的元素更新當前集合,重復元素只保留一次。
這些方法和特性使得集合在Python中成為一種非常有用的數據結構,特別適用於去重、集合運算等場景。