数据结构之dict类

dict类

dict 是字典类。什么是字典(Dictionary)呢?就是一个可以通过索引找到对象的数据类型。在Python 的dict类里,索引就是"键",对象也叫"值",二者合起来就叫"键值对"。每个"键值对"之间用逗号(,)隔开,每个"键"和"值"之间用冒号(:)隔开,"键"与"值"之间一 一对应。

dict的賦値

输出结果
注意

"键"是不可变的,因此其类型只能是 int 型、str 型、tuple 型和bool 型等;而"值"是可以随意改变的,也就意味着它可以是任意的数据类型。

2. Python中dict的知识点

dict 绝对算是 Python 中最常用的数据类型了,从检索的逻辑到方法,从元素添加到修改,无不体现出了暴力美学。


输出结果

小知识

字典还有fromkeys()、update()等很多十分实用的内置方法,字典还有一个好的特性,就是检索字典的效率非常快,像列表、元组根本不能和它相比,因为字典是一对一检索的,也就是时间复杂度为O(1)。相比之下,列表的时间复杂度则更复杂一些,如下表所示。

操作 操作说明 时间复杂度 注 释
index(value) 查询索引 O(1)
append(value) 队尾添加 O(1)
pop() 删除并返回最后的元素 O(1)
pop(index) 根据索引删除某个元素 O(n) 后面的元素需要前移
insert(index,value) 根据索引插入某个元素 O(n)
reverse 列表反转 O(n)
sort 列表排序 O(n log n)
注意

字典的copy()和 iteration()的时间复杂度为O(n)。

这就又涉及时间复杂度和空间复杂度的计算问题了,你可还记得算法量度?

相关推荐
vvilkim23 分钟前
数据结构类型、区别与应用场景:一篇讲透选型逻辑
数据结构
锋行天下34 分钟前
服务器 Python 2.7 装不了 langgraph-cli?用本地生成 Dockerfile 曲线救国
人工智能·后端·python
一条大祥脚38 分钟前
深入理解 PyTorch FlexAttention:从 Score Mod 到 Mask Mod 的稀疏加速之道
人工智能·pytorch·python·注意力机制·flex attention·可编程注意力
2601_967980112 小时前
Python自动化办公:模块、库与样式调整教程
python·excel·自动化办公·openpyxl·样式调整
长沙三为智能科技2 小时前
GEO与传统SEO的5个关键差异:排名与被引用、关键词与答案型的全维度对比
python·aigc·seo·ai搜索·geo优化
量化分析码农3 小时前
【Python量化趋势跟踪实战 02】突破买入总被假突破坑:通道系统与入场时机
python
Agent世界4 小时前
多平台登录态巡检:cookie 判据为什么会撒谎
python
量化分析码农4 小时前
【Python量化趋势跟踪实战 01】均线多头排列就是趋势开始吗:过滤与确认
python
lisw054 小时前
Dayhoff的PAM替换矩阵理论评介!
线性代数·算法·矩阵
用户298698530144 小时前
Python 实战:把代码写入 Word 文档的两种实现方式
后端·python·api