zoukankan      html  css  js  c++  java
  • 集合操作

    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()      #浅复制
  • 相关阅读:
    170110-学习MoveIt!
    12.29-ros-gazebo高级
    12.27-ros-gazebo基础
    4.9-Simulation in gazebo or webots
    6.28-机器人模拟器Gazebo基础
    4.8-URDF in ROS
    Win32双缓冲画图原理
    Win32 计时器
    最简化的DirectX 11开发环境的配置 VS2010
    VS2010 C++编译报错LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
  • 原文地址:https://www.cnblogs.com/brace2011/p/9185426.html
Copyright © 2011-2022 走看看