• Python自娱—9.集合


    集合是可变数据类型;它里边的元素必须是不可变数据类型

    set就是不存value的字典,只存key

    set中的元素是不能重复的,无序的,可哈希的;因为无序,所以没有索引

    哈希的特点就是散列,所以set内部是无序的


    创建集合的方式

    set = set() 
    set = ({})
    set = {}
    set = set({})
    

     

    增删改查

    set.add()       # 正常增加
    set.update()    # 迭代添加,如果加的是字符串,则拆分字符串
    for i in set    # 随机刷数据
    set.pop()       # 随机删,不要添加元素
    set.remove()    # 按元素删 如果元素不存在,报错
    set.clear()     # 清空集合  打印集合得到的结果是set()
    

     

    交集并集反交集...

    set1&set2                       # 得到交集
    set1.intersection(set2)         # 同样的到交集
    set1^set2                       # 得到差集
    set1.symmetric_difference(set2) # 同上
    set1-set2                       # 得到set1独有差集
    set.difference(set2)            # 同上
    set1 < set2                     # 说明set1是set2子集
    set1.issubset(set2)
    

     

    冻结集合

    - frozenset冻结集合,它是不可变的,存在哈希值,
    
    - 好处是可以作为字典的Key,也可作为其他集合的元素
    
    - 缺点是创建不能修改,没有add,remove方法.
    
    s = frozenset("barry")
    print(s, type(s))
    

     

    使用技巧

    set1 -= set2("")                # 直接删掉字符串拆分后的内容
    set("posh") == set("shop")
    set1 | set2                     # 合并集合
    set.discard(obj)                # 这个方法删除,如果元素不存在不报错,返回none
    

     

    集合推导式

    s = {x**2 for x in [1, -1, 2]}
    
  • 相关阅读:
    安装kali中的一些常用工具和firefox的插件
    kali定制
    熟悉BASH命令
    kali中各目录的作用
    kali中netspeed的安装方法
    kali中常用的ctf工具
    【学生党必看】大学里,你的六个重要选择【转载】
    kali持久加密USB的制作
    elasticsearch _search结果解析
    Springboot整合Elasticsearch报错availableProcessors is already set to [4], rejecting [4]
  • 原文地址:https://www.cnblogs.com/FGdeHB/p/15827865.html
Copyright © 2020-2023  润新知