前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python-集合数据类型内置方法

Python-集合数据类型内置方法

作者头像
py3study
发布2020-01-15 22:59:01
3790
发布2020-01-15 22:59:01
举报
文章被收录于专栏:python3python3

集合内置方法(必考)

用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序。

定义方式:{}内用逗号隔开多个元素,元素只能是不可变类型(整形、浮点型字符串),且有两个特点:

1、会删除重复的值

2、会打乱集合内的值

代码语言:javascript
复制
wenyi_girlfriend_set = {'fanping', 'zhuping', 'qiangge', 'changyi', 'muzhiguniang1', 'muzhiguniang1','nick'}
zhuping_jiyou_set = {'fanping', 'wenynyi', 'qiange', 'wuzhiguniang'}
print(wenyi_girlfriend_set)
代码语言:javascript
复制
{'fanping', 'nick', 'muzhiguniang1', 'changyi', 'qiangge', 'zhuping'}

自定义set方法

代码语言:javascript
复制
wenyi_freind_list = ['ruhua','suiyue','suiyue']
print(set(wenyi_freind_list))
# def set(wenyi_freind_list):
#     s = set()
#     for i in wenyi_freind_list:
#         s.add(i)
#     print(s)
代码语言:javascript
复制
{'suiyue', 'ruhua'}

常用操作和内置方法

长度len

代码语言:javascript
复制
print(len(wenyi_girlfriend_set))
代码语言:javascript
复制
6

成员运算 in 和 not in

代码语言:javascript
复制
print('fanping'in wenyi_girlfriend_set)
代码语言:javascript
复制
True

并集 内置=.union 快捷符号=“|” (两个集合的汇总,必考)

代码语言:javascript
复制
print(wenyi_girlfriend_set.union(zhuping_jiyou_set))
print(wenyi_girlfriend_set | (zhuping_jiyou_set))
代码语言:javascript
复制
{'fanping', 'nick', 'wuzhiguniang', 'muzhiguniang1', 'wenynyi', 'changyi', 'qiange', 'qiangge', 'zhuping'}
{'fanping', 'nick', 'wuzhiguniang', 'muzhiguniang1', 'wenynyi', 'changyi', 'qiange', 'qiangge', 'zhuping'}

交集 内置=intersection 快捷符号=“&” (连个集合的共有的值,必考)

代码语言:javascript
复制
print(wenyi_girlfriend_set.intersection(zhuping_jiyou_set))
print(wenyi_girlfriend_set & (zhuping_jiyou_set))
代码语言:javascript
复制
{'fanping'}
{'fanping'}

差集 内置=difference 快捷符号=“-” (前面集合减去后面集合所剩的值)

代码语言:javascript
复制
print(wenyi_girlfriend_set.difference(zhuping_jiyou_set))
print(wenyi_girlfriend_set - (zhuping_jiyou_set))
代码语言:javascript
复制
{'nick', 'muzhiguniang1', 'changyi', 'qiangge', 'zhuping'}
{'nick', 'muzhiguniang1', 'changyi', 'qiangge', 'zhuping'}

对称差集 内置=symmetric_difference 快捷符号“^”(等于两个集合的汇总再减去两个集合共有的值)

代码语言:javascript
复制
print(wenyi_girlfriend_set.symmetric_difference(zhuping_jiyou_set))
print(wenyi_girlfriend_set ^ (zhuping_jiyou_set))
代码语言:javascript
复制
{'zhuping', 'nick', 'wenynyi', 'muzhiguniang1', 'changyi', 'qiange', 'qiangge', 'wuzhiguniang'}
{'zhuping', 'nick', 'wenynyi', 'muzhiguniang1', 'changyi', 'qiange', 'qiangge', 'wuzhiguniang'}

==

代码语言:javascript
复制
print(wenyi_girlfriend_set == zhuping_jiyou_set)
代码语言:javascript
复制
False

父集 >、>= 、issuperset (A包含B,A>B,则为true,否则为false)

代码语言:javascript
复制
print(wenyi_girlfriend_set > zhuping_jiyou_set)
print(wenyi_girlfriend_set.issuperset(zhuping_jiyou_set))
代码语言:javascript
复制
False
False

子集 < 、<= 、issubset

代码语言:javascript
复制
print(wenyi_girlfriend_set < zhuping_jiyou_set)
print(wenyi_girlfriend_set.issubset(zhuping_jiyou_set))
代码语言:javascript
复制
False
False

add 添加

代码语言:javascript
复制
s={1,2,'a'}
s.add(3)
print(s)
代码语言:javascript
复制
{3, 1, 2, 'a'}

remove 移除

代码语言:javascript
复制
s.remove(2)
print(s)
代码语言:javascript
复制
{3, 1, 'a'}

difference_update (从S1这个集合中删除另一个集合S2的所有元素。)

代码语言:javascript
复制
s1 = {1,2,3,'a'}
s2 = {1,2,'a'}
print(s1.difference_update(s2))
print(s1)
代码语言:javascript
复制
None
{3}

isdisjoint (如果两个集合的交集为空,则返回True。)

代码语言:javascript
复制
print(s1.isdisjoint(s2))
代码语言:javascript
复制
True

存一个or多个值:多个值

有序or无序(有索引为有序,否则为无序):无序

可变or不可变:可变

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-06-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 集合内置方法(必考)
    • 用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序。
      • 定义方式:{}内用逗号隔开多个元素,元素只能是不可变类型(整形、浮点型字符串),且有两个特点:
        • 自定义set方法
      • 常用操作和内置方法
        • 长度len
        • 成员运算 in 和 not in
        • 并集 内置=.union 快捷符号=“|” (两个集合的汇总,必考)
        • 交集 内置=intersection 快捷符号=“&” (连个集合的共有的值,必考)
        • 差集 内置=difference 快捷符号=“-” (前面集合减去后面集合所剩的值)
        • 对称差集 内置=symmetric_difference 快捷符号“^”(等于两个集合的汇总再减去两个集合共有的值)
        • ==
        • 父集 >、>= 、issuperset (A包含B,A>B,则为true,否则为false)
        • 子集 < 、<= 、issubset
        • add 添加
        • remove 移除
        • difference_update (从S1这个集合中删除另一个集合S2的所有元素。)
        • isdisjoint (如果两个集合的交集为空,则返回True。)
      • 存一个or多个值:多个值
        • 有序or无序(有索引为有序,否则为无序):无序
          • 可变or不可变:可变
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档