Python Set集合

集合的声明

集合是一个无序的不重复元素序列。底层为哈希表。哈希表(无序,不重复)

声明

set1 = set()  # 声明一个空集合
set2 = {"京A0988","京B3467","京F8212"} # 声明一个非空集合
注意:{} 无法声明空集合,为空字典!

集合的内置函数

集合不支持索引下标及切片访问! 

set2 = {"京A0988","京B3467","京F8212"}

# 增
>>add() # 将元素添加到集合中,如果元素已存在,则不进行任何操作。
set2.appexd("京B8B212")
res: {"京A0988","京B8B212","京B3467","京F8212"}
>>update() # 参数为可迭代对象(列表,元组,集合,字典等),将某一个对象扩展到原来的集合中去。
set2.update([1,2],[3,4]) # 参数可以是多个
res:[1,2,3,4,"京A0988","京B3467","京F8212"]

# 删
>>remove() # 删除指定元素 若没有 则报错
set2.remove("京A0988")
res:{"京B3467","京F8212"}
>>discard() # 删除指定元素 如果没有元素则什么都不做
set2.discard("京A0988")
res:{"京B3467","京F8212"}

>>pop() # 随机删除一个元素
set2.pop()
res:{"京A0988","京F8212"}

>>clear() # 清空集合
set2.clear()
res:{}

>>del # 清空集合并回收地址
del set2

# 改 
不支持
# 查
不支持

支持的符号

3 in {1, 2, 3} True 判断元素是否在集合中 
for x in {1,2,3}:print(x) > 迭代
is 判断两个集合是否id相等

集合的运算

# 交集
&  intersection()  intersection_update() (运算均有update这个方法,做完运算在原集合上更新)
res = set1 & set2 
res = set1.intersection(set2)

# 并集
|
res = set1 | set2
res = set1.union(set2)
# 差集
-
res = set1 - set2  # 前面集合有后面结合没有
res = set1.difference(set2)

#对称差集
^
res = set1 ^ set2  # 并集减去交集
res = set1.symmetric_difference(set2)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 7,872评论 0 4
  • 公元:2019年11月28日19时42分农历:二零一九年 十一月 初三日 戌时干支:己亥乙亥己巳甲戌当月节气:立冬...
    石放阅读 7,457评论 0 2
  • 今天上午陪老妈看病,下午健身房跑步,晚上想想今天还没有断舍离,马上做,衣架和旁边的的布衣架,一看乱乱,又想想自己是...
    影子3623253阅读 3,064评论 3 8

友情链接更多精彩内容