1. 程式人生 > >Python中關於集合的介紹及用法

Python中關於集合的介紹及用法

一、集合的含義及建立方法

集合(set)是一種無序的並且裡面存放不同元素的序列。

集合可以使用大括號 { } 或者 set() 函式建立集合,注意:建立一個空集合必須用 set() 而不是 { },因為 { } 是用來建立一個空字典。

建立  集合a   集合b

a={1,2,3,4,5,6}

b={4,5,6,7,8,9}

二、集合的日常操作方法

1.列表去掉重複的元素

建立一個列表c

c=[1,2,3,1,2]

print(set(a))

結果:

{1, 2, 3}

2.新增元素

(1)add方法

a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.add("abc")
print(a)
結果:
{1, 2, 3, 4, 5, 6, 'abc'}

(2)update方法
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.update("abc")
print(a)
結果:
{1, 2, 3, 4, 5, 6, 'c', 'b', 'a'}
小結:add是單個元素的新增,update是新增一個序列

3.刪除元素
(1)discard方法
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.discard(5)
print(a)
結果:
{1, 2, 3, 4, 6}
(2)remove方法
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.remove(5)
print(a)
結果:
{1, 2, 3, 4, 6}

(3)pop方法
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.pop()
print(a)
結果:
隨機刪除一個a裡面的元素

總結:remove和discard都可以刪除指定元素,區別是如果刪除的元素不存在,remove會報錯,discard不報錯。

4.清空 clear
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.clear()
print(a)
結果:
set()
5.統計集合元素個數 len
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(len(a))
結果:
6

三、集合間的關係

1.a集合與b集合的交集
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
e=a.intersection(b)
print(e)
或者是
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a & b)
結果都是
{4, 5, 6}

2.a集合與b集合的並集
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.union(b))
或者是
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a | b)
結果都是
{1, 2, 3, 4, 5, 6, 7, 8, 9}

3.a集合與b集合的對稱差集(去掉交集後的元素)
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.symmetric_difference(b))
或者是
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a ^ b)
結果都是
{1, 2, 3, 7, 8, 9}

4.判斷a是不是b的子集 a<b
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.issubset(b))
結果:
false

5.判斷a是不是b的父集 a>b
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.issuperset(b))
結果:
false

6.差集
(1)a-b
#在a裡不在b集合裡的元素
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.difference(b))
結果:
{1, 2, 3}
(2)b-a
#在b裡不在a集合裡的元素
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(b.difference(a))
結果:
{8, 9, 7}