构建集合
特性:
无序,用hash值存储
元素必须是不可变对象
元素不可重复
set集合可变,forzenset不可变
可迭代
1、大括号构建{ }
s = {‘a’,‘b’,‘c’}
s={ } #空的{ }是字典,不是集合
2、set()方法,括号内是可迭代对象
s = set('abcde')
#s->{'e', 'c', 'd', 'a', 'b'}
s1 = frozenset('jqk')
3、构建空集合
s1=set()
4、集合解析
>>>{
x*2 for x in 'abcde' }
>>>{
'aa', 'bb', 'cc', 'dd', 'ee'}
补充:字典和集合都是用{ }表示,具体是什么类型根据里面的元素判断是集合还是字典
集合运算操作
x={
'd', 'b', 'a', 'c'}
y={
'f', 'd', 's'}
z={
'k', 's', 'l', 'j', 'd'}
x-y #-{'a', 'b', 'c'}
1. 交集
集合x和y中都包含了的元素
用**&** 或者**intersection()**方法
x&y
x.intersection(y)
#-->{'d'}
2. 并集
集合x包含了的元素,或集合y包含了的元素
用 | 或者 **union()**方法
x|y
x.union(y)
#-->{'a', 'b', 'c', 'd', 'f', 's'}
3. 差集
集合x包含了的元素,但是集合y不包含的元素
用 - 或者 difference() 方法
x