集合是无序可变,元素不能重复。实际上,集合底层是字典实现,集合的所有元素都是字典中的“键对象”,因此是不能重复的且唯一的。 方式一:set 方式二:直接创建(建议使用) 方式一:add(增加一个元素) 方式二:update(迭代着增加) 方式一:remove(按照元素删除) 方式二:pop(随机删除一个元素) 方式三:clear(清空集合) 方式四:del(删除集合) 方式五:discard(移除指定的集合元素) 符号: 符号: 符号: 符号:集合
集合的创建
s1 = set({1, 'lucy', False, 'haha'}) print(s1)
s1 = {1, 'lucy', False, 'haha'} print(s1) # {'lucy', 1, 'haha', False} 注意:如果上述代码False改为True,由于True和1重复,结果只保留1 s1 = {1, 'lucy', True, 'haha'} print(s1) # {1, 'haha', 'lucy'}
空集合
1. 空字典 d = {} print(type(d)) # <class 'dict'> 2. 空集合 s = set() print(type(s)) # <class 'set'>
列表去重
li = [1, 2, 4, 3, 3, 3, 5, 6, 6, 6] set1 = set(li) new_li = list(set1) print(new_li) # [1, 2, 3, 4, 5, 6]
集合元素的增加
set1 = {'蒙犽', '李白', '韩信'} set1.add('刘备')
set1 = {'蒙犽', '李白', '韩信'} set1.update(['刘备', '不知火舞', '刘备']) print(set1)
集合元素的删除
# 指定元素不存在会报错 set1 = {'蒙犽', '李白', '韩信'} set1.remove('李白') print(set1) # {'蒙犽', '韩信'}
set1 = {'蒙犽', '李白', '韩信'} set1.pop() print(set1) # {'蒙犽', '李白'}
set1 = {'蒙犽', '李白', '韩信'} set1.clear() print(set1) # set()
set1 = {'蒙犽', '李白', '韩信'} del set1
# 如果元素不存在,则不执行任何操作 set1 = {2, 5, 1, 7, 8} set1.discard(5) print(set1) # {1, 2, 7, 8} set1 = {2, 5, 1, 7, 8} set1.discard(9) print(set1) # {1, 2, 5, 7, 8}
集合的变相改值
# 将集合中'李白'改为'lucy' set1 = {'蒙犽', '李白', '韩信'} set1.remove('李白') set1.add('lucy') print(set1) # {'韩信', '蒙犽', 'lucy'}
集合的运算
1. 交集
&
或者 intersection()
set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} print(set1 & set2) # {4, 5} print(set1.intersection(set2)) # {4, 5}
2. 并集
|
或者 union()
set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7, 8} print(set1.union(set2)) # {1, 2, 3, 4, 5, 6, 7, 8}
3. 差集
-
或者 difference()
set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} print(set1 - set2) # {1, 2, 3} print(set1.difference(set2)) # {1, 2, 3}
4. 反交集
^
或者 symmetric_difference()
set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} print(set1 ^ set2) # {1, 2, 3, 6, 7, 8} print(set1.symmetric_difference(set2)) # {1, 2, 3, 6, 7, 8}
5. 子集与超集
<
或者 issubset()
)# set1 包含于 set2 set1 = {1, 2, 3} set2 = {1, 2, 3, 4, 5, 6} print(set1 < set2) # True print(set1.issubset(set2)) # True
>
或者 issuperset()
)# set2 包含 set1 set1 = {1, 2, 3} set2 = {1, 2, 3, 4, 5, 6} print(set2 > set1) # True print(set2.issuperset(set1)) # True
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算