zoukankan      html  css  js  c++  java
  • python数据类型字典和集合

    # 创建字典
    shop = {"怡宝":"2元","可比克":"3元","烟":"非卖品" }
    # 字典的key可以为元组,数值,字符串 不能为列表,因为列表是可变的
    shop1 = {(20,30):"元组",3:"int","滴滴":"string"}
    # 根据字典查询
    #输出整个字典
    print(shop)
    # 普通查询,只能查询已存在的key
    print(shop["怡宝"])
    # 查询key是否存在在字典中
    print("怡宝"in shop)
    #优化查询,若要查询的key不存在,返回none,none我们可以指定默认返回值
    print(shop.get("可口可乐","该key不在字典中"))
    # 查询字典中所有的键
    print(shop.keys())
    # 查询字典中所有的值
    print(shop.values())
    # 查询字典中键 值 一共多少对
    print(len(shop))


    #新增
    # 我们像新增一个键与值
    # 字典名称[key] = value
    shop["可口可乐"] = "3.5元"
    print(shop)
    # 元组的方式添加进去
    shop["苹果","橘子"] = "2","3"
    print(shop)

    # 修改
    shop["可口可乐"] = "3.4元"
    print(shop)

    # 删除
    del shop["可口可乐"]
    print(shop)
    # 删除整个shop字典内容
    shop.clear()
    print(shop)

    # 删除字典
    # del shop
    # print(shop)



    # 集合
    # 集合和字典类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
    # 集合(set)是一个无序的不重复元素序列,集合内的数据没有先后关系
    # 创建
    set = {"a","b","c","d","e","f","g"}
    print(set)


    # 集合重复数据会被过滤,可以拿来用作去重
    set1 = {1,2,3,3,3,3,3,3,3}
    print(set)

    # 查
    # 判断元素是否在集合之内
    print(1 in set1)

    # 判断元素不在集合之内
    print(1 not in set1)

    # 新增
    # 向集合内增加元素,如果添加的元素已经存在的话,则不执行任何操作
    set.add("dd")
    print(set)

    # 通过remove(key)方法可以删除元素:
    set.remove("dd")
    print(set)

    # 随机删除元素
    set.pop()
    print(set)

    # 集合的内建函数
    # 求长度
    print(len(set))
    # 最大值
    print(max(set1))
    # 最小值
    print(min(set1))
    # 求和
    print(sum(set1))


    # 集合中的运算
    # 集合中包含了交集、并集、差集、子集、超集
    # 交集:交集,顾名思义就是取两个(或多个)集合相交(相同)的部分,然后生成一个新集合
    s1 = {1,2,3,4}
    s2 = {7,2,4,9,10}
    # 方式1
    print(s1&s2)
    # 方式2
    print(s1.intersection(s2))

    # 并集返回不同集合的所有元素形成一个新集合
    # 方式1:
    print(s1.union(s2))
    # 方式2:
    print(s1|s2)

    #差集将两个或多个集合的差值作为一个新集合返回
    # 方式1:
    print(s1.difference(s2))
    print(s2.difference(s1))
    # 方式2:
    print(s1- s2)
    print(s2 -s1)
  • 相关阅读:
    路由器配置深入浅出—静态路由和缺省路由配置
    盘点飞思卡尔i.MX多媒体处理器前世今生 (转)
    ubuntu18.04下取消中键复制粘贴功能
    uboot常用命令及其使用
    MCU软件最佳实践——使用printf打印数据
    uboot无法通过nfs加载ubuntu18.04中的文件(转)
    GNU C字节对齐__attribute__((aligned(n))) #pragma pack(n)
    ENDIAN的由来及BIGEDIAN 和LITTLEENDIAN(转)
    自动生成c# Model属性
    使用JAVA生成随机的AES密钥
  • 原文地址:https://www.cnblogs.com/ztcbug/p/13042979.html
Copyright © 2011-2022 走看看