您的位置:首页 > 编程语言 > Python开发

python之集合

2019-04-14 15:39 411 查看

定义集合

定义一个任意集合:set()

>>> s = set('1234')   #集合是无序不重复的
>>> s
{'4', '1', '3', '2'}

向集合添加或删除元素

给集合添加元素:add()
删除集合中的元素:remove()
删除任意一个元素:pop()
清空元素:clear()

>>> s.add('5')
>>> s
{'3', '4', '1', '2', '5'}
>>> s.remove('4')
>>> s
{'3', '1', '2', '5'}
>>> s.pop()
'3'
>>> s
{'1', '2', '5'}
>>> s.clear()
>>> s
set()

处理集合关系

符号 描述
- 差集
& 交集
| 并集
^ 异或,两个集合的不同之处
!= 不等于
== 等于
in 是集合成员为真
not in 不是成员为真
#定义集合a、b:
>>> a = set([1,2,3,4,5,6])
>>> a
{1, 2, 3, 4, 5, 6}
>>> b = set([1,3,5,6,7,9])
>>> b
{1, 3, 5, 6, 7, 9}
>>> a-b   #a-b,是a中有,b中没有
{2, 4}
>>> b-a
{9, 7}
>>> a & b   #a和b的共同元素,即交集
{1, 3, 5, 6}
>>> a | b   #a和b的所有元素并去重,即并集
{1, 2, 3, 4, 5, 6, 7, 9}
>>> a ^ b    #a和b中不同元素的集合
{2, 4, 7, 9}
>>> a != b   #判断a不等于b时返回True
True
>>> a == b   #判断a等于b时返回True
False
>>> '2' in a   #判断字符串‘2’是否在a中
False
>>> 2 in a  #判断数字2是否在a中
True
>>> 7 in a
False
>>> 7 not in a
True

集合推导式

#c集合取随机元素n的范围是(1,5)并且满足随机元素n大于2
>>> c = {n for n in range(1,6) if n > 2}
>>> c
{3, 4, 5}

列表、元组、字典转集合

>>> lst = ['a','b',1,2,3,3,4]
>>> tup = ('q','w',1)
>>> dic = {'a':1,'b':'2'}
>>> print(set(lst))    #集合是无序无重复的
{1, 'b', 3, 2, 4, 'a'}
>>> print(set(tup))
{'w', 'q', 1}
>>> print(set(dic))
{'a', 'b'}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: