环境小硕的转行之路-10-集合

时间:2019-08-14
本文章向大家介绍环境小硕的转行之路-10-集合,主要包括环境小硕的转行之路-10-集合使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

遗漏的一点知识点,老师后面补充的现在补上。

集合

集合使由数组由set函数变成的,将集合变成set之后可以进行差集,并集,交集的操作。

输入


list_1 = [1,4,5,7,3,6,7,9] #list里面有两个重复的7
list_1 = set(list_1)
print(list_1,type(list_1))
list_2 = set([2,6,0,22,88,8,4])
print(1,list_1.intersection(list_2))#交集运算符为&
print(2,list_1.union(list_2))#并集运算符为|
print(3,list_1.difference(list_2))#差集 in list_1 but not in list_2 运算符为 -
print(4,list_1.issubset(list_2))#判断是否子集,返回布尔值
print(5,list_1.issuperset(list_2))#判断是否为复集,返回布尔值
print(6,list_1.symmetric_difference(list_2))#对称差集,并集后去掉交集。运算符为^
print(7,list_1.isdisjoint(list_2))#若两个集合没有交集,返回布尔值true
#集合的添加和删除
list_1.add(999)#一项
list_1.update([99,9,9999])#多项
list_1.remove(9)
#其它的一些语句
print(8,len(list_1))#集合的长度
print(9,99 in list_1)#判断99是否在集合中,返回布尔值
print(10,list_2.pop())#任意删除集合中的一个元素,并返回这个元素
print(11,list_2.discard(2))#删除已知值,不会报错,无返回值

输出:


{1, 3, 4, 5, 6, 7, 9} <class 'set'>#此时没有2个7
1 {4, 6}#2者共有的的数据
2 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 22, 88}#两个集合合并去重
3 {1, 3, 5, 9, 7}#list1有list2没有
4 False #list2不是list1的子集
5 False #list1不是list2的子集
6 {0, 1, 2, 3, 5, 7, 8, 9, 22, 88} #并集去交集所以4、6消失
7 False #二者有交集
8 9     #list1的长度
9 True  #99在list1中
10 0    #随机删除了0
11 None

原文地址:https://www.cnblogs.com/negu/p/11349897.html