加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

浅谈Python 集合(set)类型的操作――并交差

发布时间:2020-12-16 20:33:19 所属栏目:Python 来源:网络整理
导读:阅读目录 介绍 基本操作 函数操作 介绍 python的set是一个无序不重复元素集,基本功能包括关系测试和消除重复元素. 集合对象还支持并、交、差、对称差等。 sets 支持 x in set、 len(set)、和 for x in set。作为一个无序的集合,sets不记录元素位置或者插入

阅读目录

•介绍
•基本操作
•函数操作

介绍

python的set是一个无序不重复元素集,基本功能包括关系测试和消除重复元素. 集合对象还支持并、交、差、对称差等。

sets 支持 x in set、 len(set)、和 for x in set。作为一个无序的集合,sets不记录元素位置或者插入点。因此,sets不支持 indexing,slicing,或其它类序列(sequence-like)的操作。

基本操作

>>> x = set("jihite")
>>> y = set(['d','i','m','t','e'])
>>> x    #把字符串转化为set,去重了
set(['i','h','j','e','t'])
>>> y
set(['i','d','t'])
>>> x & y  #交
set(['i','t'])
>>> x | y  #并
set(['e','t'])
>>> x - y  #差
set(['h','j'])
>>> y - x
set(['m','d'])
>>> x ^ y  #对称差:x和y的交集减去并集
set(['d','m'])

函数操作

 

>>> x
set(['i','t'])
>>> s = set("hi")
>>> s
set(['i','h'])
>>> len(x)          #长度

>>> 'i' in x
True
>>> s.issubset(x)       #s是否为x的子集
True
>>> y
set(['i','t'])
>>> x.union(y)        #交
set(['e','t'])
>>> x.intersection(y)     #并
set(['i','t'])
>>> x.difference(y)      #差
set(['h','j'])
>>> x.symmetric_difference(y) #对称差
set(['d','m'])
>>> s.update(x)        #更新s,加上x中的元素
>>> s
set(['e','j'])
>>> s.add(1)         #增加元素
>>> s
set([1,'j'])
>>> s.remove(1)        #删除已有元素,如果没有会返回异常
>>> s
set(['e','j'])
>>> s.remove(2)

Traceback (most recent call last):
 File "<pyshell#29>",line 1,in <module>
  s.remove(2)
KeyError: 2
>>> s.discard(2)        #如果存在元素,就删除;没有不报异常
>>> s
set(['e','j'])
>>> s.clear()         #清除set
>>> s
set([])
>>> x
set(['i','t'])
>>> x.pop()          #随机删除一元素
'i'
>>> x
set(['h','t'])
>>> x.pop()
'h'

以上这篇浅谈Python 集合(set)类型的操作――并交差就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读