集合的常见操作
集合使用“{}”包含元素,各个元素之间使用逗号进行分隔。创建集合最简单的方式是使用赋值语句,例如:
>>> set_demo = {100, 'word', 10.5} # 创建集合
>>> set_demo
{'word', 10.5, 100}
上述定义集合时元素的顺序与打印时元素的顺序是不同的,说明集合中的元素是无序的。
还可以使用set()函数进行创建,该函数中可以传入任何组合数据类型,例如:
>>> set_one = set('tuple')
>>> set_one
{'u', 't', 'e', 'l', 'p'}
>>> set_two = set((13, 15, 17, 19))
>>> set_two
{17, 19, 13, 15}
注意,空集合只能使用set()函数进行创建。
集合是可变的数据类型,集合中的元素可以动态地增加或删除,接下来 ,通过一掌表罗列集合的常见操作,具体如表1所示。
表1 集合的常见操作
常见操作 | 说明 |
---|---|
S.add(x) | 往集合S中添加元素x(x不属于S) |
S.remove(x) | 若x在集合S中,则删除该元素,不在则产生KeyError异常 |
S.discard(x) | 若x在集合S中,则删除该元素,不在则不会报错 |
S.pop() | 随机返回集合S中的一个元素,同时删除该元素。若S为空,则产生KeyError异常 |
S.clear() | 删除集合S中的所有元素 |
S.copy() | 返回集合S的一个拷贝 |
S.isdisjoint(T) | 若集合S和T中没有相同的元素,则返回True |
假设有一个集合为{10,151,33,98,57},分别使用add()、remove()、pop()和clear()方法给集合添加和删除元素,示例如下:
>>> set_demo= {10, 151, 33, 98, 57} # 创建集合
>>> set_demo.add(61) # 往集合中添加元素61
>>> set_demo
{33, 98, 10, 151, 57, 61}
>>> set_demo.remove(151) # 从集合中删除元素151
>>> set_demo
{33, 98, 10, 57, 61}
>>> set_demo.pop() # 从集合中随机删除一个元素
33
>>> set_demo
{98, 10, 57, 61}
>>> set_demo.clear() # 删除集合中的所有元素
>>> set_demo
set()