第十二天 Python之字典遍歷-集合-函式

Asahi_aileen發表於2020-11-13

字典遍歷

keys() values() items()

keys()  所有的鍵
values()  所有的值
items()  所有的鍵和值

下面是程式碼:

在這裡插入圖片描述

集合

集合(set)是一個無序的不重複元素序列。
可以使用大括號 { } 或者 set() 函式建立集合,注意:建立一個空集合必須用 set() 而不是 { },因為 { } 
是用來建立一個空字典。
  • 集合中只能儲存不可變物件
  • 集合中儲存的物件是無序的(不是按照元素的插入順序儲存的)
  • 集合中不能出現重複的元素

集合內建方法完整列表

方法描述
add()為集合新增元素
clear()移除集合中的所有元素
copy()拷貝一個集合
difference()返回多個集合的差集
difference_update()移除集合中的元素,該元素在指定的集合也存在。
discard()刪除集合中指定的元素
intersection()返回集合的交集
intersection_update()返回集合的交集。
isdisjoint()判斷兩個集合是否包含相同的元素,如果沒有返回 True,否則返回 False。
issubset()判斷指定集合是否為該方法引數集合的子集。
issuperset()判斷該方法的引數集合是否為指定集合的子集
pop()隨機移除元素
remove()移除指定元素
symmetric_difference()返回兩個集合中不重複的元素集合。
symmetric_difference_update()移除當前集合中在另外一個指定集合相同的元素,並將另外一個指定集合中不同的元素插入到當前集合中。
union()返回兩個集合的並集
update()給集合新增元素

向集合中新增和刪除元素

add()新增元素

setname.add(element)

setname:表示要新增的元素的合集

element:表示要新增的元素內容

這裡只能使用字串、數字及布林型別的True或者False等,不能使用列表、元組等迭代物件

thisset = set(("Google", "Runoob", "Taobao"))
thisset.add("Facebook")
print(thisset)

執行結果:
{‘Taobao’, ‘Runoob’, ‘Facebook’, ‘Google’}

remove()移除元素

setname.remove( x )
thisset = set(("Google", "Runoob", "Taobao"))
thisset.remove("Taobao")
print(thisset)

執行結果:
{‘Google’, ‘Runoob’}

len()計算集合元素個數

 thisset = set(("Google", "Runoob", "Taobao"))
 len(thisset)

執行結果:
3

集合的交集、並集和差集運算

集合最常用的操作就是進行交集、並集、差集和對稱差集運算。進行交集運算時使用“&”符號;進行並集運算時使用“|”符號;進行差集運算時使用“-”符號,進行對稱差集運算是使用“^”符號。

在這裡插入圖片描述
圖 1 中,有 2 個集合,分別為 set1={1,2,3} 和 set2={3,4,5},它們既有相同的元素,也有不同的元素。以這兩個集合為例,分別做不同運算的結果如表 1 所示。

表 1 Python set集合運算

運算操作Python運算子含義例子
交集&取兩集合公共的元素>>> set1 & set2
結果{3}
並集|取兩集合全部的元素>>> set1 | set2
結果{1,2,3,4,5}
差集-取一個集合中另一集合沒有的元素>>> set1 - set2
結果{1,2}
>>> set2 - set1
結果{4,5}
對稱差集^取集合 A 和 B 中不屬於 A&B 的元素>>> set1 ^ set2
結果{1,2,4,5}

相關文章