Python集合
目录
添加
add
update
删除
remove
discard
pop
交集 &
并集 |
元素被大括号包围,每个元素间用逗号隔开,就是集合。
它和字典的区别在于,字典是键值对,而集合只是单个元素,如下就是一个集合。
s1 = {10, 20, 30}
print(type(s1)) # <class 'set'>
print(s1) # {10, 20, 30}
集合的特点在于,里面的元素不能是重复的,并且不支持下标访问。
添加
add
语法:setname.add(obj),将obj加入到集合中,如果obj在集合中已经存在,会去重。
s1 = {10, 20}
s1.add('3')
print(s1) # {100,10,20}
s1.add(10) #如果添加的元素已经在集合中存在,会自动去重
print(s1) # {100,10,20}
update
语法:setname.add(obj),将obj加入到集合中,obj必须是一个可迭代的对象。
添加列表
s1 = {10, 20}
# s1.update(100) #100不是可迭代对象,会报错
# 添加列表
s1.update([100, 90]) # [100] 类型为列表,是一个可迭代对象
print(s1) # {100, 10, 20, 90}
添加元组
s1 = {10, 20}
s1.update((22,11))
print(s1) # {10, 11, 20, 22}
添加集合
s1 = {10, 20}
s1.update({22,11})
print(s1) # {10, 11, 20, 22}
添加字典
s1 = {10, 20}
s1.update({22:11}) # 只会添加key,字典的键值对是一个整体,代表一个元素
print(s1) # {10, 20, 22}
把集合x和集合y合并,并去重
x = {"apple", "banana","music"}
y = {"apple", "runoob","google"}
x.update(y)
print(x) # {'runoob', 'google', 'apple', 'music', 'banana'}
删除
remove
语法:setname.remove(obj),将obj删除,如果obj不存在会报错。
s1 = {10, 20}
s1.remove(10) #删除10
print(s1) # {20}
s1.remove(10) #集合中没有该数会报错
discard
语法:setname.discard(obj),将obj删除,如果不存在不会报错。
s1 = {10, 20}
s1.discard(10)
print(s1) # {20}
s1.discard(10)
print(s1) # {20}
pop
语法:setname.pop(),随机删除集合中的某个数据,并返回这个数据。
s1 = {10,20,30,40,50,60}
del_num = s1.pop()
print(del_num) # 50
交集 &
# 交集 &
a = {1, 2, 3, 4}
b = {3, 4, 5, 6}
se = a&b
print(se) # {3, 4}
并集 |
# 并集 |
a = {1, 2, 3, 4}
b = {3, 4, 5, 6}
se = a | b
print(se) # {1, 2, 3, 4, 5, 6}