码迷,mamicode.com
首页 > 编程语言 > 详细

python基础知识-set集合

时间:2016-01-22 02:35:49      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:

set集合

set集合是一个无序并且不重复的元素集合。

创建一个set集合

>>> name = set(‘hello word‘)
>>> name
{‘o‘, ‘e‘, ‘h‘, ‘r‘, ‘d‘, ‘l‘, ‘ ‘, ‘w‘}

set的方法

add()

作用:向set集合里面添加新的元素

>>> name = set(‘hello word‘)
>>> name
{‘o‘, ‘e‘, ‘h‘, ‘r‘, ‘d‘, ‘l‘, ‘ ‘, ‘w‘}
>>> name.add(‘python‘)
>>> name
{‘o‘, ‘e‘, ‘h‘, ‘r‘, ‘d‘, ‘l‘, ‘ ‘, ‘w‘, ‘python‘}

clear()

作用:清空set集合中的所有元素

>>> name
{‘o‘, ‘e‘, ‘h‘, ‘r‘, ‘d‘, ‘l‘, ‘ ‘, ‘w‘, ‘python‘}
>>> name.clear()
>>> name
set()

copy()

作用:浅拷贝

>>> name = set(‘hello‘)
>>> name1 = name.copy()
>>> name1
{‘o‘, ‘e‘, ‘h‘, ‘l‘}

difference()

作用:返回两个或多个集合的差异,并作为一下新集合。而不改变原来的集合。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set1.difference(set2)
{‘h‘}
>>> set2.difference(set1)
{‘w‘}

从例子中可以看出,difference()只找出参数集合在原集合中没有的元素。

可以理解为,拿原集合中的每一个元素去参数集合中做对比,只返回参数集合中没有的元素,作为一个新的集合。

difference_update()

作用:删除原集合和参数集合中相同的元素,并更新原集合。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}

>>> set1.difference_update(set2)
>>> set1
{‘h‘}

>>> set2
{‘o‘, ‘w‘, ‘e‘, ‘l‘}

 

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set2.difference_update(set1)
>>> set2
{‘w‘}
>>> set1
{‘o‘, ‘e‘, ‘h‘, ‘l‘}

discard()

作用:移除集合中的指定元素。

 >>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}

>>> set1.discard(‘l‘)
>>> set1
{‘o‘, ‘e‘, ‘h‘}

intersection()

 作用:取交集,赋值给一个新的集合。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set3 = set1.intersection(set2)
>>> set3
{‘o‘, ‘e‘, ‘l‘}

intersection_update()

 作用:取交集,修改原集合

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set1.intersection_update(set2)
>>> set1
{‘o‘, ‘e‘, ‘l‘}

isdisjoint()

 作用,判断是否没有交集,没有交集返回True,有交集返回False。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set1.isdisjoint(set2)
False
>>> set3 = {‘a‘,‘b‘}
>>> set1.isdisjoint(set3)
True

issubset()

 作用:判断原集合是否为参数集合的子集,是返回True,不是返回False。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘h‘,‘o‘}
>>> set1.issubset(set2)
False
>>> set2.issubset(set1)
True

issuperset()

作用:判断原集合是否为参数集合的父集,是返回True,不是返回False。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘h‘,‘o‘}

>>> set1.issuperset(set2)
True
>>> set2.issuperset(set1)
False

pop()

作用:随机删除一个元素,并获取这个元素。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = set1.pop()
>>> set2
‘o‘
>>> set1
{‘e‘, ‘h‘, ‘l‘}

remove()

作用:删除一个指定的元素。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set1.remove(‘l‘)
>>> set1
{‘o‘, ‘e‘, ‘h‘}

 

symmetric_difference()

作用:找出两个集合中所有差集,并赋值给新的集合。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set3 = set1.symmetric_difference(set2)
>>> set3
{‘w‘, ‘h‘}

 

symmetric_difference_update()

作用:找出两个集合中所有差集,并更改原集合。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set1.symmetric_difference_update(set2)
>>> set1
{‘w‘, ‘h‘}

 

union()

作用:两个集合的并集。赋值给一个新的集合。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}

>>> set3 = set1.union(set2)
>>> set3
{‘o‘, ‘e‘, ‘l‘, ‘w‘, ‘h‘}

update()

 作用:更新原集合。把参数更新到原集合中。

>>> set1 = {‘h‘,‘e‘,‘l‘,‘o‘}
>>> set2 = {‘e‘,‘l‘,‘o‘,‘w‘}
>>> set1.update(set2)
>>> set1
{‘o‘, ‘e‘, ‘h‘, ‘l‘, ‘w‘}

python基础知识-set集合

标签:

原文地址:http://www.cnblogs.com/binges/p/5137168.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!