Python笔记(11)-集合

定义

集合(set)是无序的、不重复的数据类型,因此可以去除列表或元组中重复的元素

集合(set)里面不能放可变数据类型

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

In [13]: s={'ecs','evs','vbs','evs','ces'}
In [14]: print s
set(['vbs', 'ecs', 'evs', 'ces'])

In [19]: s = set(('google','taobao','google'))
In [20]: print s
set(['google', 'taobao'])

In [15]: s = set('google')
In [16]: print s
set(['e', 'o', 'g', 'l'])

集合的关系测试操作

交集: list_1.intersection(list_2)
并集: list_1.union(list_2)
差集: list_1.difference(list_2)
         list_2.difference(list_1)
对等差分 list_1.symmetric_difference(list_2)
子集 list_1.issubset(list_2)
父集 list_1.issuperset(list_2)
有无交集 list_1.isdisjoint(list_2)

交集: list_1 & list_2
并集: list_1 | list_2
差集: list_1 - list_2
         list_2 - list_1
对等差分:  list_1 ^ list_2

集合的添加

s.add(x)
将元素x添加到集合s中,如果元素已存在,则不进行任何操作

In [23]: s={'google','taobao','tencent'}

In [24]: s.add('facebook')

In [25]: print s
set(['facebook', 'taobao', 'google', 'tencent'])

s.update(x)
在集合中添加多项,跟的参数应该是可迭代类型可以是列表,元组,字典等,x可以有多个,用逗号分开

In [34]: s={'google','taobao','tencent'}

In [35]: s.update(['admin'],['a','b','c'],{'facebook'})

In [36]: print s
set(['a', 'c', 'b', 'admin', 'facebook', 'google', 'taobao', 'tencent'])

集合的删除

s.remove(x)
将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误

注:discard()方法和remove()一样都是删除,但是remove里面如果没有元素会报错,而discard没有元素不会报错s.pop()
随机删除集合中的某个元素,并返回删除的元素,在python脚本中是这样的结果,然而在交互模式,pop 是删除集合的第一个元素(排序后的集合的第一个元素)

集和的其他操作

len(s)
显示集合set的长度
"1" in s
检测某元素是否为集合s的成员,返回布尔值

s.copy()
集合的浅拷贝,此处不深入研究
s.clear()
清空集合的所有元素

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值