Python数据类型之set相关常用操作

#set:集合去重(无序的)

list_1 = set([1,4,5,7,3,6,7,9])   #结果{1, 3, 4, 5, 6, 7, 9}

list_2 = set([2,6,0,66,22,8,4])  #结果{0, 2, 66, 4, 6, 8, 22}

list_3 = set([1,3,7])

ist_6 = set([1,5,6,8,7])

 

#交集\并集\差集\子集\父集\对称差集:使用"符号"代替单词

#交集".intersection" or "&"  2个列表的重复值

print(list_1.intersection(list_2))

print(list_1 & list_2)

 

#并集".union" or "|"    取两个列表合并以后去重

print(list_1.union(list_2))

print(list_1 | list_2)

 

#差集".difference" or "-"   #取列表1有的而列表2没有  or 列表2有而列表1没有的值

 

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)

 

#子集".issubset" or "<="  判断list3是否是list_1的子集(list_3元素都存在list_1list3就是list1的子集

print(list_3.issubset(list_1))

print(list_3 <= list_1)

 

#父集".issuperset" or ">="  判断list_1是否是list_3的父集(list_3元素都存在list_1list1就是list3的父集

print(list_1 >= list_3)

 

#对称差集(.symmetric_difference)  合并两个列表,重复的值去掉(重复值不存在)

print(list_1.symmetric_difference(list_2))

print(list_2 ^ list_1)

 

#集合的追加删除判断

#添加

list_6.add(999)

list_6.update([888,777,555])

 

#x in a   判断x是否是a的成员

print( 1 in list_1)   #list_1有1该数字 所以1是list_1成员 返回true

 

#x not in a  判断x是否不是a的成员

print( 10000 not in list_1)    #list_1没有10000该数字 所以返回true

 

#随机删除一个

print(list_6.pop())    #删除任意一个

 

#删除

list_6.remove(5)

list_6.discartd"(5)

猜你喜欢

转载自blog.csdn.net/Burgess_zheng/article/details/85690382
今日推荐