python基础1-集合操作

集合是一个无序的,不重复的数据组合,它的主要作用如下:

  • 去重,把一个列表变成集合,就自动去重了
  • 关系测试,测试两组数据之前的交集、差集、并集等关系
list_1 = [1,2,3,4,6,1]
list_1 = set(list_1)
print(list_1,type(list_1))
#集合也是无序的

list_2 = set([4,0,6,22,8])
print(list_1,list_2)

#交集 intersection
print(list_1.intersection(list_2))
print(list_1 & list_2)
#并集 union
print(list_1.union(list_2))
print(list_1 | list_2)
#差集difference
print(list_1.difference(list_2))   #1有2无
print(list_1 - list_2)
print(list_2.difference(list_1))   #2有1无
print(list_2 - list_1)
list_3 = set([4,6])
#子集
print(list_3.issubset(list_2))

#父集
print(list_1.issuperset(list_3))

#对称差集,并集-交集,彼此都没有的集合
print(list_1.symmetric_difference(list_2))
print(list_1 ^ list_2)

#other

print('---------')
list_4 = set([1,3,5])
list_5 = set('2,4,6')
print(list_4.isdisjoint(list_5))
#return true if have a null intersection ,没有交集返回True


#基本操作
list_1 = set([1,3,5])
list_1.add(999)
#添加一项
print(list_1)

list_1.update([11,22,33])
#添加多项
print(list_1)



#集合长度
print(len(list_1))

#测试是否是成员
print( 3 in list_1)

#测试是否不是成员
print( 3 not in list_1)

list_1.pop()   #删除任意
print(list_1)

#使用remove删除一项,存在则删除但是不会打印  ,若不存在会报错
print(list_1.remove(33))
print(list_1)

#discard删除不会报错
print(list_1.discard(9999))

  

posted @ 2017-04-03 14:29  larlly  阅读(128)  评论(0)    收藏  举报