Python-03 基础语法
精选
原创
©著作权归作者所有:来自51CTO博客作者liqiangbk的原创作品,请联系作者获取转载授权,否则将追究法律责任
1 Python 集合
定义
set(集合)是一种常用存储数据的容器
集合是一个无序的,不重复的数据组合
集合作用
1 元素的去重,把一个列表变成集合,可以实现自动的去重
2 关系测试,进行两个集合中数据的数学关系运算
集合创建
# 方式一:使用列表创建
list =[1,3,5,2,6,8,3]
set1= set(list)
# 方式二:创建唯一字符的集合
set3 =set("Hello")
集合案例
去重
list =[1,3,5,2,6,8,3]
set1= set(list)
>>>{1, 2, 3, 5, 6, 8}# 将列表中重复的元素去除
交集
list =[1,3,5,2,6,8,3]
set1= set(list)
list2 =[4,5,6,7,2,9,0]
set2 = set(list2)
print(set1.intersection(set2))
>>>{2, 5, 6}#求两个集合的交集
并集
print(set1.union(set2))
>>>{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
差集
# 在集合set1 但是不在集合set2
print(set1.difference(set2))
>>>{8, 1, 3}
子集
list2 =[4,5,6,7,2,9,0]
set2 = set(list2)
set4 = set([2,9])
#判断集合set4是否是集合set2的子集
print(set4.issubset(set2))# 返回布尔值
>>>True
# 父集则相反
print(set2.issuperset(set4))
>>>True
对称差集
print(set1.symmetric_difference(set2))
>>>{0, 1, 3, 4, 7, 8, 9}
#对称差集就是两个集合的并集减去两个集合的交集
符号操作集合
a = t | s # t 和 s的并集 b = t & s # t 和 s的交集 c = t – s # 求差集(项在t中,但不在s中) d = t ^ s # 对称差集(项在t或s中,但不会同时出现在二者中)
集合方法操作
集合添加
#添加一个元素set1.add("hhh")print(set1)>>>{1, 2, 3, 5, 6, 8, 'hhh'}#添加多项set2.update([55,66,77])print(set2)>>>{0, 2, 66, 4, 5, 6, 7, 9, 77, 55}
集合删除
set1.remove(1)# 使用remove删除print(set1)>>>{2, 3, 5, 6, 8, 'hhh'}# 可以使用pop()弹出,当弹完元素后,继续弹出,那么就会报错set1.pop()
集合常用函数
方法名 | 描述 |
len(set) | 返回集合的长度 |
item in set | 判读是否为集合中元素 |
item not in set | 判读是否不为集合中元素 |
set1.issubset(set) | 判断set1中任意元素都在set中 |
set1.issuperset(set) | 判断set中任意元素都在set1中 |
set.copy() | 浅复制一个set |