苦练Python第25天:玩转字典
前言
大家好,我是倔强青铜三 。欢迎关注我,微信公众号:倔强青铜三。欢迎点赞、收藏、关注,一键三连!!!
欢迎来到《100天Python》第25天!今天我们将彻底征服 Python 最灵活的数据结构------字典(dictionary)。无论是 JSON 还是 API 响应,字典无处不在。掌握它,你的数据查询将快如闪电。🐍⚡
📦 今日收获清单
- 什么是字典及其优势
- 创建与访问键值对
- 增删改查一条龙
- 常用方法与优雅遍历
- 嵌套字典与推导式
- 真实场景案例
🧠 什么是字典?
字典是无序 、可变 的键值对集合。
🔹 语法
python
person = {
"name": "Alice",
"age": 30,
"city": "New York"
}
键唯一,值可为任意类型。
🔑 创建字典
python
empty = {}
user = dict(name="John", age=25)
🔍 取值
python
print(person["name"]) # Alice
print(person.get("age")) # 30
print(person.get("email", "N/A")) # N/A
✏️ 增改键值
python
person["age"] = 31 # 修改
person["email"] = "a@b.com" # 新增
❌ 删除键值
python
person.pop("age") # 按键删除并返回值
del person["city"] # 直接删除
person.clear() # 清空
🔁 遍历
python
for k, v in person.items():
print(f"{k}: {v}")
🔄 常用方法速查
方法 | 说明 |
---|---|
keys() |
所有键 |
values() |
所有值 |
items() |
键值对 |
get(k) |
安全取值 |
pop(k) |
弹出键值 |
update(d) |
批量更新 |
clear() |
清空 |
🧱 嵌套字典
python
users = {
"alice": {"age": 30, "city": "Paris"},
"bob": {"age": 25, "city": "Berlin"}
}
print(users["alice"]["city"]) # Paris
💡 字典推导式
python
squares = {x: x*x for x in range(5)}
# {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
📊 实战案例
1. 词频统计
python
text = "apple banana apple orange"
counts = {}
for w in text.split():
counts[w] = counts.get(w, 0) + 1
print(counts)
2. 解析 API JSON
python
response = {
"status": "success",
"data": {"user": "Alice", "id": 123}
}
print(response["data"]["user"]) # Alice
3. 商品映射
python
products = {101: "Shoes", 102: "Shirt", 103: "Bag"}
print(products[102]) # Shirt
🚫 避坑指南
- ❌ 列表等可变对象不能做键
- ❌ 依赖字典顺序(3.7+ 有序,但逻辑别依赖)
- ✅ 不确定键存在时用
.get()
🧠 今日速记
- 字典 = 键值对 + O(1)查询
.get()
安全,.update()
批量- 支持嵌套 & 推导式
- 实战:计数、API、映射
最后感谢阅读!欢迎关注我,微信公众号 :
倔强青铜三
。欢迎点赞
、收藏
、关注
,一键三连!!!