zoukankan      html  css  js  c++  java
  • 集合

    集合

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

    • 去重,把一个列表变成集合,就自动去重了
    • 关系测试,测试两组数据之前的交集、差集、并集等关系

    功能

    list_1=set([1,2,3,4,5,6,7,8,9])
    list_2=set([1,3,5,6,7,9,11111])
    #交集
    print('交集',list_1.intersection(list_2))
    print('交集',list_1&list_2)
    #并集 合并起来去重复
    print('并集',list_1.union(list_2))
    print('并集',list_1|list_2)
    #差集, in list_1 but not in list_2
    print('差集',list_1.difference(list_2))
    print('差集',list_1-list_2)
    #差集 in list_2 but not in list_1
    print('差集',list_2.difference(list_1))
    print('差集',list_2-list_1)
    
    #子集
    print('子集',list_1.issubset(list_2))
    #父集
    print('父集',list_1.issuperset(list_2))
    
    #对称差集 ,去掉交集,剩下的
    print('对称差集',list_1.symmetric_difference(list_2))
    print('对称差集',list_1^list_2)
    print('===================================')
    list_3 = set([1,3,7])
    list_4 = set([2,4,6])
    print(list_3.isdisjoint(list_4  ))

    s = set([3,5,9,10])      #创建一个数值集合  
      
    t = set("Hello")         #创建一个唯一字符的集合  
    
    
    a = t | s          # t 和 s的并集  
      
    b = t & s          # t 和 s的交集  
      
    c = t – s          # 求差集(项在t中,但不在s中)  
      
    d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)  
      
       
      
    基本操作:  
      
    t.add('x')            # 添加一项  
      
    s.update([10,37,42])  # 在s中添加多项  
      
       
      
    使用remove()可以删除一项:  
      
    t.remove('H')  
      
      
    len(s)  
    set 的长度  
      
    x in s  
    测试 x 是否是 s 的成员  
      
    x not in s  
    测试 x 是否不是 s 的成员  
      
    s.issubset(t)  
    s <= t  
    测试是否 s 中的每一个元素都在 t 中  
      
    s.issuperset(t)  
    s >= t  
    测试是否 t 中的每一个元素都在 s 中  
      
    s.union(t)  
    s | t  
    返回一个新的 set 包含 s 和 t 中的每一个元素  
      
    s.intersection(t)  
    s & t  
    返回一个新的 set 包含 s 和 t 中的公共元素  
      
    s.difference(t)  
    s - t  
    返回一个新的 set 包含 s 中有但是 t 中没有的元素  
      
    s.symmetric_difference(t)  
    s ^ t  
    返回一个新的 set 包含 s 和 t 中不重复的元素  
      
    s.copy()  
    返回 set “s”的一个浅复制
  • 相关阅读:
    leetcode 309. Best Time to Buy and Sell Stock with Cooldown
    leetcode 714. Best Time to Buy and Sell Stock with Transaction Fee
    leetcode 32. Longest Valid Parentheses
    leetcode 224. Basic Calculator
    leetcode 540. Single Element in a Sorted Array
    leetcode 109. Convert Sorted List to Binary Search Tree
    leetcode 3. Longest Substring Without Repeating Characters
    leetcode 84. Largest Rectangle in Histogram
    leetcode 338. Counting Bits
    git教程之回到过去,版本对比
  • 原文地址:https://www.cnblogs.com/PYlog/p/8609540.html
Copyright © 2011-2022 走看看