掘金 人工智能 19小时前
苦练Python第25天:玩转字典
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本篇文章深入浅出地介绍了Python字典这一核心数据结构。文章从字典的定义、创建、访问、增删改查等基本操作讲起,详细阐述了其独特的键值对存储方式和高效查询的优势。同时,还涵盖了遍历字典的多种方法,如使用items()遍历键值对,以及pop()、update()等常用方法。此外,文章还介绍了嵌套字典和字典推导式的高级用法,并通过词频统计、API响应解析和商品映射等实际案例,展示了字典在数据处理中的广泛应用。最后,文章还提供了避坑指南,强调了键的不可变性以及在访问时使用get()方法的安全性。掌握字典,能极大提升Python数据处理的效率和灵活性。

🔑 Python字典是无序、可变且高效的键值对集合。其核心优势在于通过唯一的键实现快速的数据查找,时间复杂度通常为O(1),这使得它在处理大量数据时表现出色,是JSON解析、API响应处理等场景下的必备工具。

🛠️ 字典提供了丰富的操作方法,包括创建(空字典`{}`或`dict()`)、访问(通过键`[]`或`get()`,后者更安全,可避免KeyError)、增删改(直接赋值或使用`pop()`、`del`)等。遍历时,`items()`方法可以同时获取键和值,提高代码的可读性。

💡 字典支持嵌套结构,可以存储更复杂的数据关系,例如用户信息的层级表示。同时,字典推导式提供了一种简洁优雅的方式来创建字典,尤其适用于根据现有数据生成新字典的场景,如列表元素的平方映射。

📊 字典在实际应用中功能强大,例如可以轻松实现词频统计,通过`dict.get(key, default_value)`来累加计数;能够便捷地解析API返回的JSON数据,直接通过键名获取所需信息;还可以用于构建商品ID到商品名称的映射,实现快速查询。

苦练Python第25天:玩转字典

前言

大家好,我是倔强青铜三。欢迎关注我,微信公众号:倔强青铜三。欢迎点赞、收藏、关注,一键三连!!!

欢迎来到《100天Python》第25天!今天我们将彻底征服 Python 最灵活的数据结构——字典(dictionary)。无论是 JSON 还是 API 响应,字典无处不在。掌握它,你的数据查询将快如闪电。🐍⚡


📦 今日收获清单


🧠 什么是字典?

字典是无序可变键值对集合。

🔹 语法

person = {    "name": "Alice",    "age": 30,    "city": "New York"}

键唯一,值可为任意类型。


🔑 创建字典

empty = {}user = dict(name="John", age=25)

🔍 取值

print(person["name"])           # Aliceprint(person.get("age"))        # 30print(person.get("email", "N/A"))  # N/A

✏️ 增改键值

person["age"] = 31              # 修改person["email"] = "a@b.com"     # 新增

❌ 删除键值

person.pop("age")     # 按键删除并返回值del person["city"]    # 直接删除person.clear()        # 清空

🔁 遍历

for k, v in person.items():    print(f"{k}: {v}")

🔄 常用方法速查

方法说明
keys()所有键
values()所有值
items()键值对
get(k)安全取值
pop(k)弹出键值
update(d)批量更新
clear()清空

🧱 嵌套字典

users = {    "alice": {"age": 30, "city": "Paris"},    "bob": {"age": 25, "city": "Berlin"}}print(users["alice"]["city"])  # Paris

💡 字典推导式

squares = {x: x*x for x in range(5)}# {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}

📊 实战案例

1. 词频统计

text = "apple banana apple orange"counts = {}for w in text.split():    counts[w] = counts.get(w, 0) + 1print(counts)

2. 解析 API JSON

response = {    "status": "success",    "data": {"user": "Alice", "id": 123}}print(response["data"]["user"])  # Alice

3. 商品映射

products = {101: "Shoes", 102: "Shirt", 103: "Bag"}print(products[102])  # Shirt

🚫 避坑指南


🧠 今日速记

最后感谢阅读!欢迎关注我,微信公众号倔强青铜三。欢迎点赞收藏关注,一键三连!!!

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Python 字典 数据结构 编程 Python教程
相关文章