一:集合的推導式
1、用可迭代對象來創建(生成)集合的表達式叫集合推導式
2、語法
{表達式 for 變量 in 可迭代對象 [if 真值表達式]}
注:[]括號裏面的部分內容可以省略
示例:
L = [2,3,5,7,3,5,7,11]
S = {x**2 for x in L}
分析:首先定義一個例表,用for循環遍歷列表裏面的元素,然後再把x的值傳給表達式,計算其元素的平 方,最後去掉重複的數據,轉換成集合打印輸出。代碼如下圖:
3、 集合推導式的嵌套
規則與列表推導式相同。示例:
S = ‘ABC’
n = ‘123’
s1 = {x + y for x in ‘ABC’ for y in ‘123’}
分析:分別定義兩個字符串並賦值.先循環遍歷S字符串裏面的值,把S的第一個元素x傳給表達式,再遍歷n的元素,把n的第一個元素y傳給表達式,表達式裏的元素進行相加,接着再把y的第二個元素傳給表達式,與s的第一個元素進行相加。直到n的元素遍歷完畢,再遍歷S的第二個值……其結果如下圖
4、 練習
模擬一個學生在線上課系統,已知全班學生名單,隨機打印學生的姓名進行點名,並得到此學生是否已出席,輸入’y’代表已到,其它輸入代表未到場。點名結束後打印未到者名單。
二:固定集合(frozenset)
1、固定集合是不可變的,無序的,含有唯一元素的集合
2、固定集合可以作爲字典的鍵,也可以作爲集合的值(元素)
3、格式:
創建空的固定集合:
fs = frozenset()
創建非空的固定集合
Fs = frozenset([2,3,5,7])
構造函數:
Frozenset()
Frozenset(可迭代對象) 同set函數一致,返回固定集合
4、 固定集合的運算:(以下運算規則等同於set中的用法)
& 交集
| 並集
—補集
^ 對稱補集
<>= < <= == !=
In / not in
5、固定集合的方法:
相當於集合的全部方法去掉修改集合的方法
總結:
相比較其它語句,固定集合用的很少,我們一般用集合,這章節的內容很簡單,大家只要記住集合的推導式就行。
推薦我們的Python學習扣qun:784758214 ,看看前輩們是如何學習的!從基礎的python腳本到web開發、爬蟲、django、數據挖掘等【PDF,實戰源碼】,零基礎到項目實戰的資料都有整理。送給每一位python的小夥伴!每天都有大牛定時講解Python技術,分享一些學習的方法和需要注意的小細節,點擊加入我們的 python學習者聚集地