#集合是一个无序的,不重复的数据组合
#去重,把一个列表变为集合就会自动去重
list = set([1,2,3,4,1,3,4,2])
list2 = set([1,5,6,7,8])
set = set(list)
print type(set),set
>>><type 'set'> set([1, 2, 3, 4])
#并集
print list.union(list2)
print list2 | list
>>>set([1, 2, 3, 4, 5, 6, 7, 8])
>>>set([1, 2, 3, 4, 5, 6, 7, 8])
#交集
print list.intersection(list2)
print list2 & list
print list2.isdisjoint(list)#没有交集返回TRUE,有交集返回False
>>>set([1])
>>>set([1])
>>>False
#子集
print list.issubset(list2)
>>>False
#对称差集,把互相没有的取出来
print list2.symmetric_difference(list)
print list ^ list2
>>>set([2, 3, 4, 5, 6, 7, 8])
>>>set([2, 3, 4, 5, 6, 7, 8])
#差集 把前面有后面没有的取出来
print list2.difference(list)
print list - list2
>>>set([8, 5, 6, 7])
>>>set([2, 3, 4])
#添加
list.add('qwe')
list.update([111,333,1])#把列表里有的,集合没有的合并过去
print list
>>>set([1, 2, 3, 4, 'qwe', 333, 111])
#删除
list.remove('qwe')#没有则报错
list.pop()#随意删除并返回该值
list.discard('123')#删除该值,没有则返回None
print list
>>>1
>>>set([2, 3, 4, 333, 111])
#set的长度
print len(list)
>>>5
print list.issuperset(list2)#list集合是否包含在list2集合里
>>>False
#判断值是否在集合里
print 333 in list
>>>True
print 222 not in list
>>>True