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

    '''集合的方法
    set1.add()          set1.update()       set1.copy()
    set1.pop()          set1.remove()       set1.discard()
    set1.clear()        set1.union()    
              
    set1.issubset()     set1.issuperset()   set1.isdisjoint()
    set1.difference()   set1.difference_update()    
    set1.intersection() set1.intersection_update()
    set1.symmetric_difference()     set1.symmetric_difference_update()
    '''
    
    
    set1 = {1, 2, 3}
    # print(type(set1))
    # 集合元素不得重复
    # # 集合作用:  列表去重
    list1 = [1, 2, 3, 2, 1, 3, 4, 'ppp']
    list2 = list(set(list1))
    print(list2)
    print(type(list2))
    
    # 空集合  set()
    set2 = {}  # 字典
    print(type(set2))
    set3 = set()          # 空集合避免和字典搞混得用这种方式创建
    print(type(set3))
    
    # add():添加一个数据
    set1.add(1000)    # 同样添加的数随机放
    print(set1)
    # print(set1[0]) # 集合没有下标,不支持排序,无序
    
    # update() # 追加多个数据,参数是一个列表
    set1.update([1000])
    set1.update([1000, 2000, 3000])   # update()里面添加的是一个序列,注意这里是无序的添加
    set1.update('python')             # 每次添加的位置不一样
    print(set1)
    
    # remove():没有这个数据是报错
    set1.remove(1000)                 # 同之前的remove(要移除的数据),没有会报错
    print(set1)
    # discard(): 删除指定数据,如果没有这个数据,不做任何事
    set1.discard('p')
    print(set1)
    # pop():返回值,集合中,用pop()删除数据,删除的是第一个数据
    num = set1.pop()
    print(num)
    print(set1)
    
    # 集合推导式
    # 列表推导式  字典推导式  集合推导式
    
    set3 = {i for i in range(10) if i % 2 == 0}
    print(set3)
    
    
    # & 交集
    set10 = {1, 2, 3, 4}
    set11 = {2, 3, 4, 5, 6}
    print(set10 & set11)
    
    # | 并集(包含所有不重复数据)
    print(set10 | set11)
    # print(set10 | list1)       # 符号操作
    print(set10.union(list1))    # union()具有相同的方法
    print(set10.union(set11))
    
    # - # 差集:取前面这个集合有的数据,后面没有的数据
    print(set10 - set11)
    print(set11 - set10)
    

      

                                                                       -------  知识无价,汗水有情,如需搬运请注明出处,谢谢!

  • 相关阅读:
    cache buffers chains latch
    freemarker自定义标签报错(七)
    freemarker自定义标签(三)-nested指令
    freemarker自定义标签(二)
    Buffer Cache 原理
    JavaScript去除日期中的“-”
    JavaScript替换HTML标签
    JavaScript获取地址栏中的参数
    JavaScript中的indexOf
    Java中的字符串拼接
  • 原文地址:https://www.cnblogs.com/wf-skylark/p/9009780.html
Copyright © 2011-2022 走看看