组合数据类型
1、集合类型及操作
集合类型定义:多个元素的无序组合,每个元素唯一,
集合中元素无重复。集合元素不可更改。
#集合用{}表示,元素间用逗号隔开,
#建立集合类型用{}或set()
#建立空的集合类型,必须使用set()
A = {“Python”,123,(“Python”,123)}#使用{}来建立集合
print (A)
B = set(“Python123”)#使用set()来建立集合
print (B)
C = {“Python”,123,“Python”,123}
print ©
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/Flase,判断S和T的包含关系
3、4个增强操作符
S|=T 更新集合S,包括在集合S和T中的所有元素
S-=T 更新集合S,包括在集合S但不在T中的元素
S&=T 更新集合S,包括同时在集合S和T中的元素
S^=T 更新集合S,包括集合S和T中的非相同元素
A = {“p”,“y”,123}
B = set(“pypy123”)
print(A-B)
4、集合处理方法:
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,否则返回Flase
x not in S 判断S中元素x,x不在集合S中,返回True,否则返回False
set(x) 将其他类型变量x转变为集合类型
A = {“p”,“y”,123}
for item in A: #遍历循环集合内的元素
print(item,end="")
try : #遍历组合数据类型
while True: #(程序不断运行)
print(A.pop(),end="") #在集合A中不断的取出元素,A中元素为空时退出
except:
pass
5、集合类型应用场景
包含关系比较
数据去重:集合类型所有元素无重复。
ls = [“p”,“p”,“y”,“y”,123]
s = set(ls)
print(s)
lt = list(s) #将集合类型转换为列表类型
print(lt)owchart.js/