Python 字典入门:用键值对管好你的数据

举报
yd_221894022 发表于 2026/11/07 19:03:22 2026/11/07
【摘要】 字典用键值对存数据,本文从创建、取值、增改、删除、遍历讲起,配可运行代码和三个新手常踩的坑,适合 Python 初学者入门。

列表用位置找东西,字典用名字找东西。如果你要存一个学生的姓名、年龄和城市,用列表写成 ['小明', 18, '深圳'],过几天再看,很容易忘记 18 是年龄还是学号。换成字典,数据就有了名字,读起来一目了然。

一、字典是什么

字典(dict)由一对对“键(key)— 值(value)”组成,键就像抽屉上的标签,值就是抽屉里的东西。键必须是唯一的,而且一般用字符串、数字这样不可变的类型。

student = {"name": "小明", "age": 18, "city": "深圳"}
print(student)

二、取值:用键找值

用方括号加键就能取到对应的值:

print(student["name"])   # 小明
print(student["age"])    # 18

更稳妥的办法是用 get()。键不存在时,方括号会报错,get() 只会返回 None,还可以自己指定默认值:

print(student.get("score"))          # None,不报错
print(student.get("score", 0))     # 0

三、新增和修改:写法一样

给一个已有的键赋值就是修改,给一个新键赋值就是新增,语法完全一样:

student["age"] = 19          # 修改
student["score"] = 95       # 新增
print(student)

四、删除一对键值

del student["city"]
print(student)

只想取走一个值并删掉它,可以用 pop(),它会把取到的值返回给你:

score = student.pop("score")
print(score)   # 95

五、遍历字典

遍历键、遍历值、同时遍历键和值,是三种最常用的写法:

for key in student:
    print(key)

for value in student.values():
    print(value)

for key, value in student.items():
    print(key, value)

六、字典里还可以放字典

真实数据常常是嵌套的,比如一个班级里有多个学生:

class_info = {
    "小明": {"age": 18, "score": 95},
    "小红": {"age": 17, "score": 88},
}
print(class_info["小红"]["score"])   # 88

七、三个新手常踩的坑

  1. 键写错一个字就会报 KeyError,取值前先想想该用 get() 还是方括号。
  2. 字典是无序还是有序?Python 3.7 起字典会记住插入顺序,但不要用顺序来表达业务含义。
  3. 不要用可变对象(比如列表)做键,字典的键必须是不可变类型。

八、动手练一练

做一个单词本:用字典存三个英语单词和中文意思,再用 input() 让用户输入一个单词,查不到就提示“单词本里没有这个词,试试用 get() 给一个友好提示”。

words = {"apple": "苹果", "book": "书", "cat": "猫"}
word = input("请输入单词:")
print(words.get(word, "单词本里没有这个词"))

小结

字典的用法可以浓缩成一句话:用有意义的键,给数据贴上标签。先把创建、取值、增改、删除、遍历这五招练熟,下次需要“按名字找数据”的时候,你就知道该用字典而不是列表了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。