在Python中,集合是一些列不重复的元素。集合类似于字典,但是只包含键,而没有相关联的值。
集合分两类:可变集合和不可变集合。对于可变集合,你可以添加和删除元素,而不可变集合一旦创建就不能修改。
集合最常见的用途可能是用于删除序列中重复的元素,如:
>>> list = [0,0,2,3,4,3,0,4]
>>> s = set(list)
>>> print(s)
{0,2,3,4}
与字典一样,集合的元素排列顺序也是不确定的。
集合类型内建方法总结:
集合(s).方法名 | 等价符号 | 方法说明 |
s.issubset(t) | s<=t | 子集测试(允许不严格意义上的子集):s中所有的元素都是t的成员 |
s<t | 子集测试(严格意义上):s!=t而且s中所有的元素都是t的成员 | |
s.issuperset(t) | s>=t | 父集测试(允许不严格意义上的父集):t中所有元素都是s的成员 |
s>t | 父集测试(严格意义上):s!=t而且t中所有的元素都是s的成员 | |
s.union(t) | s|t | 合并操作:s“或”t中的元素 |
s.intersectin(t) | s&t | 交集操作:s“与”t中的元素 |
s.difference | s-t | 差分操作:在s中存在,在t中不存在的元素 |
s.symmetric_difference(t) | s^t | 对称差分操作:s“或”t中的元素,但不是s和t共有的元素 |
s.copy() | 返回s的拷贝(浅复制) |
以下方法仅适用于可变集合 | ||
s.update(t) | s|=t | 将t中的元素添加到s中 |
s.intersection_update(t) | s&=t | 交集修改操作:s中仅包括s和t中共有的成员 |
s.difference_update(t) | s-=t | 差分修改操作:s中包括仅属于s但不属于t的成员 |
s.symmetric_difference_update(t) | s^=t | 对称差分修改操作:s中包括仅属于s或仅属于t的成员 |
s.add(obj) | 加操作:将obj添加到s | |
s.remove(obj) | 删除操作:将obj从s中删除,如果s中不存在obj,将引发异常 | |
s.discard(obj) | 丢弃操作:将obj从s中删除,如果s中不存在obj,也没事 | |
s.pop() | 弹出操作:移除并返回s中的任意一个元素 | |
s.clear() | 清除操作:清除s中所有的元素 |
本文出自 “LE” 博客,请务必保留此出处http://lz001.blog.51cto.com/8294567/1794188
原文:http://lz001.blog.51cto.com/8294567/1794188