集合(set)是一个无序的不重复元素序列。
可以使用大括号 { }
或者 set()
函数创建集合,注意:创建一个空集合必须用 set()
而不是 { }
,因为 { }
是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}
或者
set(value)``
集合特点实例:
#去重功能
basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
print (basket)
结果输出
{'banana', 'apple', 'pear', 'orange'}
两个集合之间的运算
from builtins import set
# 两个集合之间的运算
a = set('abracadabra')
b = set('alacazam')
print (a)
print (a - b)
print (a | b)
print (a & b)
print (a ^ b)
输出结果
{'c', 'a', 'b', 'r', 'd'}
{'d', 'b', 'r'}
{'c', 'a', 'b', 'r', 'z', 'l', 'd', 'm'}
{'c', 'a'}
{'l', 'd', 'm', 'b', 'r', 'z'}
集合推导式
a = {x for x in 'abracadabra' if x not in 'abc'}
print (a)
{'d', 'r'}
添加元素:
add()
from builtins import set
thisset = set(("Google", "baidu", "Taobao"))
thisset.add("Facebook")
print (thisset)
{'Google', 'baidu', 'Taobao', 'Facebook'}
还有一个方法,也可以添加元素,且参数可以是列表,元组,字典等,语法格式如下:
upset()
from builtins import set
thisset = set(("Google", "baidu", "firefox"))
thisset.update({1, 3})
print(thisset)
thisset.update([1, 4], [5, 6])
print(thisset)
{1, 'baidu', 'Google', 3, 'firefox'}
{1, 'baidu', 'Google', 3, 4, 5, 6, 'firefox'}
移除元素:
remove()
元素不存在,不会发生错误:
discard()
实例:
from builtins import set
thisset = set(("Google", "baidu", "firefox"))
thisset.discard("360")
print(thisset)
thisset.remove("360")
print(thisset)
输出结果:
{'Google', 'firefox', 'baidu'}
#此为remove操作输出报错
Traceback (most recent call last):
File "E:\idea\python\test1.py", line 6, in <module>
thisset.remove("360")
KeyError: '360'
清空集合:
clear()