1. 集合型別定義
集合是多個元素的無序組合
>>> a = #使用{}建立集合
>>> print(a);
>>> b = set("pypy123"); #使用set建立集合
>>> print(b);
>>> c = ;
>>> print(c);
2. 集合操作符
集合操作符
操作符及應用
描述s | t
並,返回乙個新集合,包括在集合s和t中所有的元素
s - t
差,返回乙個新集合,包括在集合s但不在t中的元素
s & t
交,返回乙個新集合,包括同時在集合s和t中的元素
s ^ t
補,返回乙個新集合,包括集合s和t中的非相同元素
s <= t 或 s < t
返回true或false,判斷s和t的子集關係
s >= t 或 s > t
返回true或false,判斷s和t的包含關係
s |= t
並,更新集合s,包括在集合s和t中所有的元素
s -= t
差,更新集合s,包括在集合s但不在t中的元素
s &= t
交,更新集合s,包括同時在集合s和t中的元素
s ^= t
補,更新集合s,包括集合s和t中非相同的元素
a = ;
b = set("pypy123");
print("a與b的並集a|b=".format(a|b));
print("a與b的差集a-b=".format(a-b));
print("b與a的差集b-a=".format(b-a));
print("a與b的交集a&b=".format(a&b));
print("a與b的補集a^b=".format(a^b));
print("a與b是子集關係a<=b:".format(a<=b));
print("a與b是包含關係a>=b:".format(a>=b));
#執行結果
#a與b的並集a|b=
#a與b的差集a-b=
#b與a的差集b-a=
#a與b的交集a&b=
#a與b的補集a^b=
#a與b是子集關係a<=b:false
#a與b是包含關係a>=b:false
3. 集合處理方法集合處理方法
操作函式或方法
描述s.add(x)
如果x不在集合s中,將x增加到s
s.discard(x)
移除s中元素x,如果x不在集合s中,不報錯
s.remove(x)
移除s中元素x,如果x不在集合s中,產生keyerror異常
s.clear()
移除s中所有元素
s.pop()
隨機返回s的乙個元素,更新s,若s為空產生keyerror異常
s.copy()
返回集合s的乙個副本
len(s)
返回集合s的元素個數
x in s
判斷s中元素x,x在集合s中,返回true,否則返回false
x not in s
判斷s中元素x,x不在集合s中,返回true,否則返回false
set(x)
將其他型別變數x轉變為集合型別
s = ;
#1.若x不在集合s中,將x增加到s
s.add("t");
s.add("p");
print(s);
#執行結果
##2.移除s中元素x,如果x不在集合s中,不報錯
s.discard("t");
s.discard("0");
print(s);
#執行結果
##3.移除s中元素x,如果x不在集合s中,產生keyerror異常
try:
s.remove("t");
except keyerror:
print("產生keyerror異常");
#執行結果
#產生keyerror異常
#4.移除s中所有元素
s.clear();
print(s);
#執行結果
#set()
#5.隨機返回s的乙個元素,更新s,若s為空,產生keyerror異常
s = ;
try:
while true:
print(s.pop(), end="*");
except keyerror:
print("\n產生keyerror異常");
print(s);
#執行結果
#y*123*p*
#產生keyerror異常
#set()
#6.返回集合s的乙個副本
s = ;
a = s.copy();
print(a);
#執行結果
##7.返回集合s的個數
a = len(s);
print(a);
#執行結果
#3#8.判斷s中元素x,x在集合s中,返回true,否則返回false
a = "y" in s;
b = 345 in s;
print("a=, b=".format(a, b));
#執行結果
a=true, b=false
#9.判斷s中元素x,x不在集合s中,返回true,否則返回false
a = "y" not in s;
b = 345 not in s;
print("a=, b=".format(a, b));
#執行結果
a=false, b=true
#10.將其他型別變數x轉變為集合型別
a = "hello world";
s = set(a);
print(s);
#執行結果
#
4. 集合型別應用場景包含關係比較
a = >= ;
print(a);
#執行結果
#false
資料去重:集合型別所有元素無重複
ls = ["p", "p", "y", "y", 123];
s = set(ls);#利用了集合無重複元素的特點
print(s);
lt = list(s);#還可以將集合轉換為列表
print(lt);
#執行結果
##['p', 123, 'y']
python裡面的集合型別及操作
集合型別定義 集合是多個元素的無序組合,集合元素之間無序,且無法修改,不能存在相同的元素 a b c set pypy12345 print a print b print c 輸出結果 這體現了建立集合型別的方式為 或set 集合操作符 這個和數學中的類似 就是並差交補 操作符及應用 描述s t ...
python集合型別及運算
集合型別與數學中的集合概念相同,表示多個元素的無序組合 集合元素之間無序,但是每個元素唯一,不存在相同元素 集合元素不可更改,不能是可變資料型別 為了保證元素的唯一性 集合用大括號 表示,元素間用逗號分隔 建立集合型別用 或 set a集合是集合b的子集 else print a集合不是集合b的子集...
python 集合(set)及操作
set 集合可變的 無序的 不重複的元素的集合,元素不可索引 s set s set iterable 巢狀可迭代物件 set內的元素必須可以hash s1 set s2 set range 5 s3 set list range 10 s4 該初始化為字典 s5 set s6 s7 報錯,因為包含...