【Python入门】Python中的字典dict

1. 字典dict介绍

字典:使用键值对(key:value)来存储数据,每一个键都对应一个值,通过键(key)可以快速找到对应的值(value).

特点:键值对(key:value)存储、键(key)不能重复、可修改。

定义:

python 复制代码
# 定义字典
字典名称 = {key:value, key:value, key:value...}
# 定义空字典
字典名称 = {}
字典名称 = dict{}

# 根据 key 获取 value
值 = 字典名称[key]

注意点:字典(dict)中的value可以是任何类型的数据,而key不能为可变类型(如,key不可以是列表、集合、字典)

2.字典中的常用方法

字典中的常用方法主要围绕增删改查进行的。

方法 含义 示例
字典名称key = value 往指定字典中添加key-value键值对 dict1"韩立" = 680
字典名称.pop(key) 删除字典中指定的key,并返回该key对应的value score = dict1.pop("韩立")
del 字典名称key 删除字典中指定的键值对 del dict1"许立国"
字典名称key = value 修改字典中指定的key对应的值 dict1"南宫婉" = 650
字典名称key 根据key获取value dict1"南宫婉"
字典名称.get(key) 根据key获取value dict1.get("李慕婉")
字典名称.keys() 获取所有的key dict1.keys()
字典名称.values() 获取所有的value dict1.values()
字典名称.items() 获取所有的key-value键值对 dict1.items()

代码示例及运行结果:

python 复制代码
# 定义字典
dict1 = {"许立国": 620, "南宫婉": 660, "李慕婉": 630, "王林": 690, "贝罗": 670}

dict1["韩立"] = 680
print("新增键值对后的字典:", dict1)

score = dict1.pop("韩立")
print("删除字典中的韩立:", score)

del dict1["许立国"]
print("删除许立国后的字典:", dict1)

dict1["南宫婉"] = 650
print("修改键值对后的字典:", dict1)

value1 = dict1["南宫婉"]
print("获取key为南宫婉的值:", value1)

value2 = dict1.get("李慕婉")
print("获取key为李慕婉的值:", value2)

print("获取字典中的所有key:", dict1.keys())
print("获取字典中的所有value:", dict1.values())
print("获取字典中的所有key-value:", dict1.items())

3. 数据容器对比

数据容器有列表(list)、字符串(str)、元组(tuple)、集合(set)、字典(dict),这5者之间的对比,如下表所示:

特性 列表(list) 字符串(str) 元组(tuple) 集合(set) 字典(dict)
有序性 有序 有序 有序 无序 有序(Python3.7+)
元素重复 允许 允许 允许 不允许 key不允许,value允许
可变性 可变 不可变 不可变 可变 可变
索引访问 支持 支持 支持 不支持 不支持
切片操作 支持 支持 支持 不支持 不支持
使用场景 有序可重复数据集合 文本处理 固定数据记录 去重数据集合 键值对
相关推荐
FriendshipT35 分钟前
Ultralytics:解读 YOLO26 知识蒸馏
人工智能·pytorch·python·深度学习·yolo
BUG研究员_1 小时前
工具绑定与调用
python·agent
苏灿烤鱼1 小时前
AI Agent 深拆 | 图能让 AI 决策可追责吗?Semantica 登顶拆解
python·github·agent
Sirius.z9 小时前
第R6周:LSTM实现糖尿病探索与预测
python
名字还没想好☜9 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
·薯条大王9 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
Dxy123931021610 小时前
Python 如何使用 MySQL 的事务
python·mysql
今儿敲了吗14 小时前
Python ——第三方包
笔记·python
麒麟水手15 小时前
国产银河麒麟系统开发实录:跑通Streamlit,我踩过的6个坑
python
麒麟水手15 小时前
麒麟系统部署检查清单:上线前30分钟,逐项自查这4类问题
python