zoukankan      html  css  js  c++  java
  • 集合set的基本操作

    集合是一个无序的,不重复的数据组合,它的主要作用如下:

    • 去重,把一个列表变成集合,就自动去重了
    • 集合中的元素必须是不可变类型
    • 关系测试,测试两组数据之前的交集、差集、并集等关系

    常用操作:

     1 a = set([1,2,3,4,5])
     2 b = set([4,5,6,7,8])
     3  
     4 print(a.intersection(b))  #交集  {4, 5}
     5 print(a&b)
     6  
     7 print(a.union(b))  #并集  {1, 2, 3, 4, 5, 6, 7, 8}
     8 print(a|b)
     9  
    10 print(a.difference(b)) #插集、得到的是a里有的b里没有的  {1, 2, 3}
    11 print(a-b)
    12  
    13 print(b.difference(a)) #插集、得到的是b里有的a里没有的  {8, 6, 7}
    14 print(b-a)
    15  
    16 print(a.symmetric_difference(b)) #方向交集、{1, 2, 3, 6, 7, 8}
    17 print(a^b)
    18 
    19 
    20 
    21 
    22 s = set([3,5,9,10])      #创建一个数值集合  
    23   
    24 t = set("Hello")         #创建一个唯一字符的集合  
    25 
    26 a = t | s          # t 和 s的并集  
    27   
    28 b = t & s          # t 和 s的交集  
    29   
    30 c = t – s          # 求差集(项在t中,但不在s中)  
    31   
    32 d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)  
    33 基本操作:  
    34   
    35 t.add('x')            # 添加一项  
    36   
    37 s.update([10,37,42])  # 在s中添加多项  
    38   
    39 t.pop()   #随机删除     t.disicard() 指定删除(元素不存在会报错)
    40   
    41 使用remove()可以删除指定一项(元素不存在会报错):  
    42   
    43 t.remove('H')  
    44 
    45 len(s)  
    46 set 的长度  
    47   
    48 x in s  
    49 测试 x 是否是 s 的成员  
    50   
    51 x not in s  
    52 测试 x 是否不是 s 的成员  
    53   
    54 s.issubset(t)  
    55 s <= t  
    56 测试是否 s 中的每一个元素都在 t 中  
    57   
    58 s.issuperset(t)  
    59 s >= t  
    60 测试是否 t 中的每一个元素都在 s 中  
    61   
    62 s.union(t)  
    63 s | t  
    64 返回一个新的 set 包含 s 和 t 中的每一个元素  
    65   
    66 s.intersection(t)  
    67 s & t  
    68 返回一个新的 set 包含 s 和 t 中的公共元素  
    69   
    70 s.difference(t)  
    71 s - t  
    72 返回一个新的 set 包含 s 中有但是 t 中没有的元素  
    73   
    74 s.symmetric_difference(t)  
    75 s ^ t  
    76 返回一个新的 set 包含 s 和 t 中不重复的元素  
    77   
    78 s.copy()  
    79 返回 set “s”的一个浅复制
    View Code
  • 相关阅读:
    结构-行为-样式-有趣的函数
    结构-行为-样式-angularJs笔记
    Js-Html 前端系列--页面撑开头尾
    Java 实现下载
    Js-Html 前端系列--Ajax
    Js-Html 前端系列--checkbox
    Nutz中过滤特殊字符
    NUTZ中处理系统未捕获异常
    Thymeleaf 笔记
    Json 使用小结
  • 原文地址:https://www.cnblogs.com/NumerOne/p/11452129.html
Copyright © 2011-2022 走看看