011集合

#集合元素不重复

#定义
s=set('xia ai qiu!')
{'x', 'u', ' ', 'i', '!', 'a', 'q'}

#当去重方法使用
list1=['xia','ai','qiu','ai']
s2=set(list1)
{'ai', 'xia', 'qiu'}

list2=[[1,2],'ewei']
s3=set(list2)
会报错,set元素不可以是可变的元素

set对象本身也是可变元素,不可hash

#添加
s2.add('uuuuuu')
print(s2)
s2.update('lalala')
print(s2)
{'xia', 'ai', 'qiu'}
{'uuuuuu', 'xia', 'ai', 'qiu'}                             #add方法把uuuuuu作为一整个添加
{'l', 'uuuuuu', 'xia', 'ai', 'qiu', 'a'}       #update方法把lalala分开添加,添加了'l','a'
s2.update([11,'aa'])                   #把列表里面的元素添加进去

#删除
s2.remove('l')
s2.pop(),随便一个

#清空
s2.clear()


#交集  
a=set('xia')
b=set('qing')
print(a.intersection(b))   #{'i'}            或者 &
#并集
print(a.union(b))            #{'i', 'a', 'x', 'q', 'g', 'n'}    或者使用 +
#差集
print(a.difference(b))           #{'x', 'a'}           或者使用 -
print(b.difference(a))           #{'g', 'n', 'q'}
#对称差集
print(a.symmetric_difference(b))   #{'q', 'n', 'g', 'x', 'a'}     或者  ^
#父集和子集
print(a.issuperset(b))    >
print(a.issubset(b))       <

posted @ 2017-12-17 10:44  Alos403  阅读(151)  评论(0编辑  收藏  举报