zoukankan      html  css  js  c++  java
  • 元组、字典、集合

    一、元组

    t1 = (1, 2)
    t2 = tuple((1, 2))
    t3 = (1, )

    # 索引 | 切片 | 长度

    # .count(obj) | .index(obj, bIndex, eIndex)

    # 有序存储 | 可存放多个数据 | 不可变(内部可以包含可变对象,可变对象已久可变)

    # 应用场景:将不允许操作的列表可以转化为元组,将允许操作的元组转化为列表

     

     

    二、字典

    # 定义
    d1 = {'a': 10, 'b': 20}

    # 无序,存放多个值,可变 => 通过key取值
    d1['a']

    # 增删改查
    d1[key] = value: key存在就是改,不存在就是增
    d1[key]: 取,如果key存在就报错,所以用get(key, defalut)
    update({'a': 100, 'c': 300}): key有更新,无新增
    pop(key): 根据key删且返回对应value

    # key存在,不操作,不存在设置key=default
    setDefault(key, default)

     

     

    三、集合(set)


    '''
    1.定义
    s1 = set()
    s2 = set({1, 2, 3})

    2.重点:数据具有唯一性
    # i) 单列数据集合:str,list,tuple,set   双列:dict
    # ii) 无序存储:无key无index,无法取值
    # iii) 可变数据类型,内部可以存放任意类型数据,但数据具有唯一性

    3.运算
    p_set = {'a', 'b', 'c', 'egon'}
    l_set = {'x', 'y', 'z', 'egon'}

    # 交集 &
    res = p_set & l_set
    print(res)
    res = p_set.intersection(l_set)
    print(res) # {'egon'}

    # 并集
    res = p_set | l_set
    print(res)
    res = p_set.union(l_set)
    print(res) # {'z', 'c', 'y', 'x', 'b', 'a', 'egon'}

    # 差集
    res = p_set - l_set
    print(res) # {'a', 'b', 'c'}
    res = l_set.difference(p_set)
    print(res) # {'x', 'z', 'y'}

    # 对称差集
    res = p_set ^ l_set
    print(res)
    res = p_set.symmetric_difference(l_set)
    print(res) # {'y', 'a', 'b', 'x', 'z', 'c'}

    '''

    '''
    了解:
    sup_set = {1, 2, 3, 4, 5}
    sub_set = {1, 2, 3}
    temp_set = {3, 2, 1}
    flag_set = {7, 8, 9}

    print(sup_set > sub_set) # True
    print(sup_set < sub_set) # False
    print(temp_set == sub_set) # True
    # 两个set是否没有交集
    res = flag_set.isdisjoint(temp_set) # True
    '''

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    static link:关于gcc连接静态库的几种方式
    gcc同时使用动态和静态链接
    解决 liblog4cpp.a: could not read symbols: Bad value
    lombok 下的@Builder注解用法
    mybatis-plus id主键生成的坑
    关于mybatis-plus 和 mybatis-plus-boot-starter 异同点分析
    解决SpringBoot2.0集成Swagger2访问404的问题
    Google 开源的这个库,性能快到让程序员飞起来!
    解决mybatisplus saveBatch 或者save 无法插入主键问题
    intellij IDEA github clone 指定分支代码
  • 原文地址:https://www.cnblogs.com/zhangdajin/p/10596613.html
Copyright © 2011-2022 走看看