1.集合的概述:
- 集合相当于字典中的Key,也就是舍弃了值的字典;
- 使用 {} 或者 set() 来创建;
- 集合是无序的;
- 集合元素是唯一的(如果出现重复元素,会被覆盖;应用在爬虫去重);
- 使用in 判断元素是否存在;
- 集合内元素可变;
2.集合的创建:
#直接创建空集,会变成字典;
>>> set_1 = {}
>>> type(set_1)
<class 'dict'>
#创建空集,使用set
>>> set_1 = set()
>>> type(set_1)
<class 'set'>
#可以使用set将字典转为集合
>>> set_1 = {'a','b','c'}
>>> type(set_1)
<class 'set'>
#可以在set()中直接转换列表;
>>> set(['a','b','c'])
{'b', 'c', 'a'}
#当列表有重复值的时候,使用set转换为集合时,会取唯一值。
>>> lis = ['a','b','c','a']
>>> set(lis)
{'b', 'c', 'a'}
#使用in判断某值是否在集合中
>>> set_1
{'b', 'c', 'a'}
>>> a in set_1
False
>>> 'a' in set_1
True
3.集合的运算:交集、并集、差集等;
>>> set_1
{'b', 'c', 'a'}
>>> set_2 = {'b', 'd', 'e'}
>>> set_2
{'b', 'e', 'd'}
>>> type(set_2)
<class 'set'>
#获取交集,多个集合中都有的部分;
>>> set_1 & set_2
{'b'}
#获取并集;两个集合合并;
>>> set_1 | set_2
{'b', 'e', 'c', 'a', 'd'}
#获取差集,A有B无;或A无B有
>>> set_1 - set_2
{'c', 'a'}
>>> set_2 - set_1
{'e', 'd'}
4.集合的修改等操作:
>>> set_1.update('f')
>>> set_1
{'b', 'f', 'c', 'a'}
>>> set_1.update('k')
>>> set_1
{'b', 'k', 'a', 'f', 'c'}
#一个集合插入另一个集合
>>> set_1.update(set_2)
>>> set_1
{'b', 'e', 'k', 'a', 'f', 'c', 'd'}