集合
Python也包含有 集合 类型。集合是由不重复元素组成的无序的集。它的基本用法包括成员检测和消除重复元素。集合对象也支持像 联合,交集,差集,对称差分等数学运算。
创建集合
花括号或 set() 函数可以用来创建集合。注意:要创建一个空集合你只能用 set() 而不能用 {},因为后者是创建一个空字典,
>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>> print(basket)
{'orange', 'banana', 'pear', 'apple'} # 去重
>>> empty_set = set()
>>> empty_set
set()
类型转换
可以将已有的列表 字符串 元组 字典转换为集合,重复的会被抛弃
# 集合也是无序的
>>> set(['tom','jack','jimi','tom','lili','jack'])
{'tom', 'jimi', 'lili', 'jack'}
>>> set('litter')
{'r', 'e', 'i', 't', 'l'}
>>> set(('a','b','c','c','b','d'))
{'b', 'd', 'a', 'c'}
# 当字典作为参数传入set()时只有key会被使用
>>> fruits = {'apple':'red','orange':'orange','cherry':'red'}
>>> set(fruits)
{'apple', 'orange', 'cherry'}
合并 及运算符
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a
{'r', 'd', 'c', 'b', 'a'}
>>> b
{'c', 'z', 'a', 'm', 'l'}
# 交集 &
>>> a & b
{'a', 'c'}
# 并集
>>> a | b
{'r', 'd', 'c', 'z', 'b', 'a', 'm', 'l'}
# 差集
>>> a - b
{'b', 'd', 'r'}
>>> b - a
{'z', 'm', 'l'}
# ^ 异或集
>>> a ^ b # a-b + b-a
{'z', 'b', 'r', 'm', 'd', 'l'}
浙公网安备 33010602011771号