python(14)--集合

时间:2023-02-23 19:06:33


前言

本篇文章学习的是 python 中集合的基础知识。

集合元素的内容是不可变的,常见的元素有整数、浮点数、字符串、元组等。至于可变内容列表、字典、集合等不可以是集合元素。虽然集合不可以是集合的元素,但是集合本身是可变的,可以去增加或删除集合的元素。

正文 

集合可以使用“{ }”或“set()”函数建立集合。 

1.建立集合 

使用 {} 建立集合一下试试:

data={'d',1,"球球",'d',(1,2,3),1.23}
print(data)
print("数据类型:",type(data))

python(14)--集合

集合的特色是元素唯一,所以俩个“d”,舍去一个。

使用set()函数建立集合: 

data=set()
print(data)
print("数据类型:",type(data))
dataa=set('hello world')
print(dataa)

python(14)--集合

不可以这么写哦:data=set('a','s','fe')

set()函数与列表,元组的结合: 

data=set(['a','s','fe'])
print(data)
tuplea=('w','wde','wdc')
dataa=set(tuplea)
print(dataa)

python(14)--集合

列表转化为集合:x=set(列表名字)

集合转化为列表:y=list(x)

2.集合基础操作 

a.交集(intersection)

python中有一个交集符号了:&,另外还有一个函数intersectin()可以执行此操作。

python(14)--集合

实例: 

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A&B
print("A&B的交集是:",AB)
AB=A.intersection(B)
print("A.intersection交集B是:",AB)

python(14)--集合

b.并集(union)

在python中的并集符号是”|“,此外还有union()函数可以完成此操作。

python(14)--集合

实例: 

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A|B
print("A|B的交集是:",AB)
AB=A.union(B)
print("A.union并集B是:",AB)

python(14)--集合

c.差集(difference)

在python中的并集符号是”-“,此外还有difference()函数可以完成此操作。

python(14)--集合

实例:

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A-B
print("差集A-B集是:",AB)
AB=A.difference(B)
print("使用difference函数:",AB)

python(14)--集合

d.对称差集(symmetric_difference())

在python中的并集符号是”^“,此外还有symmetric_difference()函数可以完成此操作。

python(14)--集合

A={1,3,2,4,5,6}
B={5,6,4,7,9,3}
AB=A^B
print("对称差集A^B集是:",AB)
AB=A.symmetric_difference(B)
print("使用symmetric_difference函数:",AB)

python(14)--集合

e.适用集合的方法函数

add():加一个元素到集合

clear():删除集合所有元素

copy():浅复制( shallow copy )方式复制集合

sorted():对集合进行排序,返回的是列表 [1, 2, 3, 4, 5, 6]


min():最小值


max():最大值


sum():求总和


len():元素数量


frozenset():冻结集合,不可变集合,定住了。


union():求两个集合的并集


difference):A-B,求差集


difference_update():删除集合内与另一集合重复的元素


discard():如果是集合成员则删除


intersection():求两个集合的交集


instersection_update():可以使用交集更新集合内容


isdisjoint():如果2个集合没有交集返回 True 


issubset():如果另一个集合包含这个集合返回 True 


isupperset():如果这个集合包含另一个集合返回 True 


pop():传回所删除的元素,如果是空集合返回 False 


remove():删除指定元素,如果此元素不存在,程序将返回 KeyError 


symmetric_difference():求两个表的对称差集


symmetric_difference_update():使用对称差集更新集合内容


update():使用并集更新集合内容

参考资料

《python王者归来》