初识python: 集合
集合是一个无序的,不重复的数据组合。主要作用如下:
1、去重,把一个列表变成集合,会自动去重;
2、关系测试,测试两组数据之前的交集、差集、并集等关系
#!/user/bin env python # author:Simple-Sir # time:20180916 # 集合 ''' 集合是一个无序的,不重复的数据组合,主要作用如下: 1、去重,把一个列表变成集合,会自动去重; 2、关系测试,测试两组数据之前的交集、差集、并集等关系 关系运算符: a = b | c #并集 a = b & c #交集 a = b - c #差集 a = b ^ c #对称差集(a有或b有,且剔除ab都有的。) ''' list_1 = [1,4,5,7,3,6,7,9] list_1 = set(list_1) list_2 = set([2,4,6,8,11,22]) print('打印两个集合:',list_1,list_2) print('交集:',list_1.intersection(list_2)) #取交集 print('符号交集 &:',list_1 & list_2) #取交集 print('并集:',list_1.union(list_2)) #取并集 print('符号并集 |:',list_1 | list_2) #取并集 print('差集:',list_1.difference(list_2)) # 取差集:list_1中有,list_2没有 print('符号差集 -:',list_1 - list_2) # 取差集:list_1中有,list_2没有 print('差集:',list_2.difference(list_1)) # 取差集:list_2中有,list_1没有 print('符号差集 -:',list_2 - list_1) # 取差集:list_2中有,list_1没有 print('对称(反向)差集:',list_1.symmetric_difference(list_2)) #对称(反向)差集:剔除交集的数据 print('符号对称(反向)差集 ^:',list_1 ^ list_2) list_3 = set([1,3,5]) print('判断list_3是否是list_1的子集:',list_3.issubset(list_1)) #判断list_3是否是list_1的子集 print('判断list_1是否是list_3的父集:',list_1.issuperset(list_3)) #判断list_1是否是list_3的父集 list_4 = set([6,7,8]) print('判断list_3和list_4是否有交集:',list_3.isdisjoint(list_4)) #判断list_3和list_4是否有交集 list_1.add(111) #添加一项 print('添加一项:',list_1) list_1.update([222,333,444]) #添加多项 print('添加多项:',list_1) list_1.remove(444) #删除一项,若删除项不存在,会报错。 list_1.discard(333) #删除一项,若删除项不存在,不会报错。 print('删除一项:',list_1) print('随机删除一项,并返回删除值:',list_1.pop()) #随机删除一项,并返回删除值 print('list_1的长度:',len(list_1)) #长度 # 注:列表、元组、字典 都是这样用(in,not in 一样)! a in b # a是否存在b中 print('判断1是否存在list_1中:',1 in list_1) #判断1是否存在list_1中 print('判断0是否不存在list_1中:',0 not in list_1) #判断1是否不存在list_1中
执行结果:
附1:关系运算符
a = b | c #并集
a = b & c #交集
a = b - c #差集
a = b ^ c #对称差集(a有或b有,且剔除ab都有的。)
附2:
列表、元组、字典 判断某个值是否是其元素,都是此用法:(in,not in 一样)!
a in b # a是否存在b中
a not in b # a是否不存在b中
世风之狡诈多端,到底忠厚人颠扑不破;
末俗以繁华相尚,终觉冷淡处趣味弥长。
posted on 2018-09-16 21:32 Simple-Sir 阅读(271) 评论(0) 编辑 收藏 举报