当前位置: 首页 > web >正文

4️⃣字典(dict)速查表

📋 常用方法

方法用法示例说明
创建字典d = {'a': 1, 'b': 2}初始化字典
添加/更新元素d['c'] = 3添加或更新键值
获取元素d['a']访问键对应的值,key不存在会报错
安全获取元素d.get('x', default)key不存在返回默认值
判断键是否存在'a' in d返回 True/False
删除键d.pop('a')删除键并返回对应值
获取所有键d.keys()返回所有键
获取所有值d.values()返回所有值
获取所有键值对d.items()返回所有 (key, value) 对
清空字典d.clear()删除所有键值

📝Python 字典简介

Python 内置了强大的字典(dict)数据结构,也称为映射(map),它以“键-值”(key-value)对的形式存储数据,拥有极快的查找速度。它广泛应用于需要快速访问和存储数据的场景。


⚡为什么 dict 查找速度快?

普通的列表(list)查找需要遍历所有元素,时间复杂度随元素增多线性增长。而 dict 通过哈希算法,能直接计算出键对应的存储位置,查找速度几乎不随数据量变化。

举例对比:

names = ['Michael', 'Bob', 'Tracy']
scores = [95, 75, 85]
# 查找“Bob”的成绩,需要先找到名字索引,再取对应分数,时间复杂度O(n)

而用 dict:

d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
print(d['Bob'])  # 直接访问,时间复杂度接近O(1)

💡dict 的特点与使用建议

特点dictlist
查找速度极快,几乎不随数据量变化线性增长,数据越多越慢
内存占用较大,因为需要额外存储哈希表较小
顺序Python 3.7+ 保持插入顺序固定顺序
key 类型限制必须是不可变类型(字符串、整数等)元素可以是任意类型

⚠️注意事项

  • key 必须是不可变类型,否则会报 TypeError(如 list 不能做 key)。
  • dict 使用哈希算法存储,依赖 key 的 hash 值,确保同一个 key 一直对应同一个位置。
  • Python 3.7 以后,dict 保持插入顺序,但逻辑上不依赖顺序。
http://www.xdnf.cn/news/16230.html

相关文章:

  • 阶段1--域名服务器
  • Java开发岗面试记录合集
  • 一二章笔记总结
  • Ubuntu系统下FFmpeg源码编译安装
  • 【Pytorch】数据集的加载和处理(二)
  • 纯CPU场景下C++的分布式模型训练框架设计思路
  • 刷完jetpack后无法打开安装的浏览器的解决办法useful
  • Linux dd命令 数据备份、转换与磁盘操作的终极工具
  • 分布式任务调度实战:XXL-JOB与Elastic-Job深度解析
  • OpenLayers 快速入门(六)Interaction 对象
  • 模拟实现消息队列项目
  • 7月23日星期三今日早报简报微语报早读
  • C基础 07_综合案例《猜拳游戏》
  • Android NDK与JNI深度解析
  • HarmonyOS Flutter Boost完全接入手册:爬完所有坑的实战指南
  • 双写缓冲区 Redo Log
  • C++缺省参数
  • React项目运行环境与执行顺序及动态路由等使用注意点
  • 数据结构系列之AVL树
  • 1、黑马点评复盘(短信登录-Session或Redis实现)
  • 不同地区的主要搜索引擎工具
  • 嵌入式linux下的NES游戏显示效果优化方案:infoNES显示效果优化
  • GaussDB view视图的用法
  • now能减少mysql的压力吗
  • 重写 与 重载
  • OpenCV(02)图像颜色处理,灰度化,二值化,仿射变换
  • 优化 Elasticsearch JVM 参数配置指南
  • 浙大Fast Lab:融合3D激光雷达与强化学习的「端到端导航」,让无人机“飞”在点云上!
  • 【Linux-云原生-笔记】keepalived相关
  • OSPF路由协议——上