Day28(0212) <<
Previous Next >> W5
set集合(一)
set型別用來表示集合,包含無順序不重複且可改變內容的多個資料,前後以大括號標示,資料以逗號隔開,資料型別可以不同,例如:
>>>{1,"apple",2,"banana"}
{1,2,"apple","banana"}
>>>{2,1,"banana","apple"}
{1,2,"apple","banana"}
set集合及list串列一樣可以用來存放多個資料,差別在於集合並無順序且不可重,執行效率較list串列好。
建立集合
可使用Python內建set()函式或{}建立集合,例如:
>>>set1 = set({1,2,3})
>>>set1
{1,2,3}
>>>set2 = set(range(6))
>>>set2
{0,1,2,3,4,5}
內建函式
之前介紹過的len()、max()、min()和sum()等內建函式皆適用於集合,例如:
>>> S = {1,2,3,4}
>>>len(S)
4
>>>
>>>max(S)
4
>>>
>>>min(S)
1
>>>
>>>sum(S)
10
運算子
集合僅支援in & not in、比較運算子,其餘不支援,原因為集合無順序之分,例如:
>>>"Taiwan" in {"Taiwan",1,2}
True
>>> 3 not in {"Taiwan",1,2}
True
而比較運算子在此處有不同的定義,如下:
1.S1 == S2:若S1與S2包含的元素相同,將傳回True,否則傳回False。
2.S1 != S2:若S1與S2包含的元素不同,將傳回True,否則傳回False。
3.S1 <= S2:若S1是S2的子集合(subset),將傳回True,否則傳回False。
4.S1 < S2:若S1是S2的真子集合(proper subset),將傳回True,否則傳回False。
5.S1 >= S2:若S1是S2的超集合(superset),將傳回True,否則傳回False。
6.S1 > S2:若S1是S2的真超集合(proper superset),將傳回True,否則傳回False。
Day28(0212) <<
Previous Next >> W5