集合
1、创建集合
创建集合使用{ }或set(),但是如果要创建空集合只能使用set(),因为{ }用来创建空字典。
特点:
1. 集合可以去掉重复数据;
2. 集合数据是无序的,故不支持下标。
s1 = {10, 20, 30, 40, 50} # 无序
# 结果:{50, 20, 40, 10, 30}
print(s1)
s2 = {10, 20, 50, 90, 20, 50} # 去掉重复
# 结果:{10, 50, 20, 90}
print(s2)
s3 = {'abcdefg'}
# 结果:{'abcdefg'}
print(s3)
s4 = set('abcdefgh') # 拆分成单个
# 结果:{'a', 'e', 'f', 'g', 'b', 'c', 'h', 'd'}
print(s4)
s5 = set() # 空集合
# 结果:set()
print(s5)
# 结果:<class 'set'>
print(type(s5))
s6 = {} # 空字典
# 结果:<class 'dict'>
print(type(s6))
2、集合常见操作方法
2.1 增加数据
add()增加单一数据,增加序列则会报错
s1 = {10, 20, 30}
s1.add(100)
# 结果:{100, 10, 20, 30}
print(s1)
s1.add(10)
# 结果:{100, 10, 20, 30}
print(s1)
s1.add([50, 60])
# 结果: 报错
print(s1)
update()追加数据序列,增加单一数据则报错
s2 = {20, 50, 80}
s2.update([100, 200])
# 结果:{100, 200, 80, 50, 20}
print(s2)
s2.update('abc')
# 结果:{100, 200, 'b', 80, 'c', 50, 20, 'a'}
print(s2)
s2.update(30)
# 结果:报错
print(s2)
2.2 删除数据
remove()删除集合中的指定数据,如果数据不存在则报错。
s1 = {10, 20, 40, 50, 60}
s1.remove(20)
# 结果:{50, 40, 10, 60}
print(s1)
s1.remove(20)
# 结果:报错
print(s1)
discard()删除集合中的指定数据,如果数据不存在也不会报错。
s1 = {10, 20, 40, 50, 60}
s1.discard(20)
# 结果:{50, 40, 10, 60}
print(s1)
s1.discard(20)
# 结果:{50, 40, 10, 60}
print(s1)
pop()随机删除集合中的某个数据,并返回这个数据。
s1 = {10, 20, 40, 50, 60}
s1.pop()
# 结果:{20, 40, 10, 60}
print(s1)
s2 = s1.pop()
# 结果:20
print(s2)
# 结果:{40, 10, 60}
print(s1)
2.3 查找数据
in :判断数据在集合序列
not in :判断数据不在集合序列
s3 = {20, 50, 90}
# 结果:True
print(20 in s3)
# 结果:False
print(30 in s3)
# 结果:False
print(20 not in s3)
# 结果:True
print(400 not in s3)

浙公网安备 33010602011771号