前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python中关于集合的介绍及用法

Python中关于集合的介绍及用法

作者头像
py3study
发布2020-01-19 17:24:52
4230
发布2020-01-19 17:24:52
举报
文章被收录于专栏:python3python3

一、集合的含义及创建方法

集合(set)是一种无序的并且里面存放不同元素的序列。

集合可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

创建  集合a   集合b

a={1,2,3,4,5,6}

b={4,5,6,7,8,9}

二、集合的日常操作方法

1.列表去掉重复的元素

创建一个列表c

c=[1,2,3,1,2]

print(set(a))

结果:

{1, 2, 3}

2.添加元素

(1)add方法

代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.add("abc")
print(a)
结果:
{1, 2, 3, 4, 5, 6, 'abc'}

(2)update方法
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.update("abc")
print(a)
结果:
{1, 2, 3, 4, 5, 6, 'c', 'b', 'a'}
代码语言:javascript
复制
小结:add是单个元素的添加,update是添加一个序列

3.删除元素
(1)discard方法
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.discard(5)
print(a)
代码语言:javascript
复制
结果:
{1, 2, 3, 4, 6}
(2)remove方法
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.remove(5)
print(a)
代码语言:javascript
复制
结果:
{1, 2, 3, 4, 6}

(3)pop方法
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.pop()
print(a)
结果:
随机删除一个a里面的元素

总结:remove和discard都可以删除指定元素,区别是如果删除的元素不存在,remove会报错,discard不报错。

4.清空  clear
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
a.clear()
print(a)
结果:
set()
代码语言:javascript
复制
5.统计集合元素个数 len
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(len(a))
结果:
6

三、集合间的关系

1.a集合与b集合的交集
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
e=a.intersection(b)
print(e)
或者是
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a & b)
代码语言:javascript
复制
结果都是
{4, 5, 6}

2.a集合与b集合的并集
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.union(b))
或者是
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a | b)
结果都是
{1, 2, 3, 4, 5, 6, 7, 8, 9}

3.a集合与b集合的对称差集(去掉交集后的元素)
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.symmetric_difference(b))
或者是
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a ^ b)
结果都是
{1, 2, 3, 7, 8, 9}

4.判断a是不是b的子集 a<b
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.issubset(b))
结果:
false

5.判断a是不是b的父集 a>b
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.issuperset(b))
结果:
false

6.差集
(1)a-b  
代码语言:javascript
复制
#在a里不在b集合里的元素
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(a.difference(b))
结果:
{1, 2, 3}  
(2)b-a
代码语言:javascript
复制
#在b里不在a集合里的元素
代码语言:javascript
复制
a={1,2,3,4,5,6}
b={4,5,6,7,8,9}
print(b.difference(a))
结果:
{8, 9, 7}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档