zoukankan      html  css  js  c++  java
  • python 字典的操作

    可变类型与不可变类型

    (字典的键必须是不可变类型的即时可哈希的)

    不可变类型,值不可以改变:(可哈希)

    • 数值类型 int, long, bool, float
    • 字符串 str
    • 元组 tuple

    可变类型,值可以改变:(不可哈希)

    • 列表 list
    • 字典 dict

    字典的常见操作:

    #增加

    变量名['键'] = 数据

    如果在使用 变量名['键'] = 数据 时,这个“键”在字典中,存在,覆盖这个键值对。不存在,那么就会新增这个元素

    dict.setdefault(“键值”,"数据")

    有键值对不做任何操作,没有键值就会增加

    # 删除

    dict.pop("键值") 

    有返回值,按键删除,如果没有此建会报错

    dict.pop("键值", None)

    按键删除,None可换成提示,没有键值会返回提示,有键值会直接删除

    dict.popitem()

    在不同python版本中不同:

    python3.6之前dict={x:x}print打印无序的,popitem()删除的时候是删除打印后的第一个

    python3.6   dict打印是有序的,即如何设置的就如何打印,popitem()删除的时候就是删除的最后一个

    dict.clear()

    清空字典

    del dict[键值]

    del可以删除整个字典,也可以按键删除

    # 修改

    dict["键值"]=val

    直接根据键值对其赋值,如果键值不存在,会直接增加对应键值对

    dict.update(dict1)

    把dict1 的键值对覆盖到dict中

    # 查找

    dict.keys()

    遍历键值

    dict.values()

    遍历值

    dict.item()

    遍历元素

    dict.get(“键值”)

    根据键值查找值,可以自定义返回值,未找到时有返回值,比如dict.get("键值",“未找到”)

    dict["键值"]

    找不到报错,找到返回对应的值

  • 相关阅读:
    Java线程面试题 Top 50
    深入理解java内存模型
    线程池的理解
    Thread的理解
    ThreadLocal的理解
    排序算法(简)
    排序算法
    【Java集合源码剖析】LinkedHashmap源码剖析
    vsftp上传文件权限问题
    xp 通过注册表修改环境变量
  • 原文地址:https://www.cnblogs.com/wilson-wu/p/8073028.html
Copyright © 2011-2022 走看看