码迷,mamicode.com
首页 > 其他好文 > 详细

集合操作

时间:2018-06-15 00:00:20      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:intersect   就是   增删改查   一个   删除   rem   enc   sdi   表示   

1. 集合操作:
 集合也是无序的
 s = set([1,2,3,4,5,6])
 print(s)
 
 输出:
 {1, 2, 3, 4, 5, 6}
 
 
 1.1 去重功能:
  list1=[1,2,3,4,5,6,1,2,5,6]
  list1=set(list1)
  print(list1)       #输出:{1, 2, 3, 4, 5, 6}
 
 1.2 关系测试:
  list1=set([1,2,13,4,5,6,1,2,15,6])
  list2=set([11,2,3,24,15,6,1,12,5,6])
  list3 = set([1,2,5,6])
  list4 = set([25,26])
  
  交集:
  print(list1.intersection(list2))         #输出:{1, 2, 5, 6, 15}
  
  并集:
  print(list1.union(list2))     #输出:{1, 2, 3, 4, 5, 6, 11, 12, 13, 15, 24}
  
  差集:在其一不再其二
  print(list1.difference(list2))    #输出:{4, 13}
  
  判断是否是子集
  print(list1.issubset(list2))    #输出:False
  print(list3.issubset(list1))    #输出:True
  
  判断是否是父集
  print(list1.issuperset(list2))    #输出:False
  print(list1.issuperset(list3))    #输出:True
  
  判断是否不存在交集:
  print(list1.isdisjoint(list3))    #输出:False  存在交集
  print(list1.isdisjoint(list4))    #输出:True
  
  对称差集:(在2个都没有的元素取出,及并集去掉交集)
  print(list1.symmetric_difference(list2))  #输出:{3, 4, 11, 12, 13, 24}
  
 1.3 运算来表示关系测试:
  list1=set([1,2,13,4,5,6,1,2,15,6])
  list2=set([11,2,3,24,15,6,1,12,5,6])
  list3 = set([1,2,5,6])
  list4 = set([25,26])
  
  交集:
  print(list1 & list2)
  并集:
  print(list1 | list2)
  差集:
  print(list1 - list2)
  对称差集:
  print(list1 ^ list2)
  
  输出:
  {1, 2, 5, 6, 15}
  {1, 2, 3, 4, 5, 6, 11, 12, 13, 15, 24}
  {4, 13}
  {3, 4, 11, 12, 13, 24}
  
  
 1.3 集合的增删改查:
  添加:
  list1=set([1,2,13,4,5,6,1,2,15,6])
  list1.add("xx")     # 添加1项
  list1.update([90,67,45])  # 添加多项
  print(list1)     #输出:{1, 2, ‘xx‘, 4, 5, 6, 67, 13, 45, 15, 90}
  
  删除(集合天生就是去重的):
  t.remove(90)     #如果删除不存在的数据会报错
  t.discard(90)     #如果删除不存在的数据不会报错
  
  x = list1.pop()     #随机删除一个,并返回删除的值
  print(x)      #1
  
  len(list1)      #求集合的长度
  
  x in s        #测试x是否是s成员
  x not in s      #测试x是否不是s成员
  
  s.copy()      #浅复制

集合操作

标签:intersect   就是   增删改查   一个   删除   rem   enc   sdi   表示   

原文地址:https://www.cnblogs.com/brace2011/p/9185426.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!