🐍 Python 零基础入门系列(六):字典与集合——映射与去重操作

📢 系列说明
欢迎来到《Python 零基础入门系列》第六篇!前五篇我们掌握了基础语法、运算符、流程控制、字符串和列表元组。

📅 更新时间:2026 年 3 月(基于 Python 3.14 最新版本)

🎯 本篇你将学到:字典的创建与操作、50+ 常用字典方法、集合的运算与去重、两者特点与区别,以及 3 个实用数据管理项目。

⏱️ 预计阅读时间:50-60 分钟 | 💻 实践时间:40-50 分钟

📌 前置知识:已完成前五篇(基础语法、运算符、流程控制、字符串、列表与元组)


📋 完整目录

┌─────────────────────────────────────────────────────────────┐
│                    本篇博客内容导航                          │
├─────────────────────────────────────────────────────────────┤
│  第一部分:字典基础                                          │
│  ├── 1. 什么是字典?                                         │
│  ├── 2. 字典的创建方式                                       │
│  └── 3. 字典的访问与修改                                     │
├─────────────────────────────────────────────────────────────┤
│  第二部分:字典常用方法                                      │
│  ├── 4. 添加与更新(update/setdefault)                      │
│  ├── 5. 删除操作(pop/popitem/clear/del)                    │
│  ├── 6. 查找方法(get/keys/values/items)                    │
│  └── 7. 字典遍历技巧                                         │
├─────────────────────────────────────────────────────────────┤
│  第三部分:字典推导式                                        │
│  ├── 8. 基础语法                                             │
│  └── 9. 条件过滤                                             │
├─────────────────────────────────────────────────────────────┤
│  第四部分:集合详解                                          │
│  ├── 10. 什么是集合?                                        │
│  ├── 11. 集合的创建                                          │
│  ├── 12. 集合的增删操作                                      │
│  └── 13. 集合的数学运算(交集/并集/差集)                    │
├─────────────────────────────────────────────────────────────┤
│  第五部分:字典 vs 集合                                      │
│  ├── 14. 数据结构对比                                        │
│  ├── 15. 使用场景对比                                        │
│  └── 16. 性能对比                                            │
├─────────────────────────────────────────────────────────────┤
│  第六部分:综合实战                                          │
│  ├── 17. 实战一:通讯录管理系统                              │
│  ├── 18. 实战二:词频统计工具                                │
│  └── 19. 实战三:数据去重处理器                              │
└─────────────────────────────────────────────────────────────┘

第一部分:字典基础

1. 什么是字典?

📖 定义

字典(Dictionary) 是 Python 中的无序、可变映射类型,通过键值对(Key-Value) 存储数据,是哈希表的实现。

┌─────────────────────────────────────────────────────────────┐
│                    字典的本质                                │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  {"name": "小明", "age": 18, "city": "北京"}                 │
│     │        │        │      │       │       │              │
│     键       值       键      值       键      值            │
│                                                             │
│  核心特性:                                                  │
│  ✅ 映射(Mapping)- 键映射到值                              │
│  ✅ 可变(Mutable)- 可以添加、修改、删除                    │
│  ✅ 键唯一(Unique Keys)- 键不能重复                        │
│  ✅ 键不可变(Immutable Keys)- 键必须是不可变类型           │
│  ✅ 3.7+ 有序 - Python 3.7+ 保持插入顺序                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

📊 字典 vs 列表

特性 列表 字典
访问方式 索引(数字) 键(任意不可变类型)
数据组织 有序序列 键值对映射
查找速度 O(n) O(1)
适用场景 有序数据集合 关联数据映射

2. 字典的创建方式

📝 多种创建方法

# 1. 花括号创建(最常用)
dict1 = {"name": "小明", "age": 18, "city": "北京"}

# 2. 空字典
dict2 = {}
dict3 = dict()

# 3. dict() 转换
dict4 = dict()
dict5 = dict(name="小明", age=18)  # 关键字参数

# 4. fromkeys() 创建(所有键相同值)
dict6 = dict.fromkeys(["a", "b", "c"], 0)
print(dict6)  # {'a': 0, 'b': 0, 'c': 0}

# 5. 字典推导式
dict7 = {x: x**2 for x in range(5)}
print(dict7)  # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}

# 6. 混合类型键值
dict8 = {
    "name": "小明",
    100: "数字键",
    (1, 2): "元组键",
    "scores": [90, 85, 88]
}

print(f"dict1: {dict1}")
print(f"dict4: {dict4}")

⚠️ 键的限制

# ✅ 可用作键的类型(不可变)
valid_dict = {
    "string": "字符串键",
    123: "整数键",
    3.14: "浮点数键",
    (1, 2): "元组键",
    True: "布尔键"
}

# ❌ 不能用作键的类型(可变)
# invalid_dict = {
#     [1, 2]: "列表键",      # TypeError!
#     {"a": 1}: "字典键",    # TypeError!
#     {1, 2}: "集合键"       # TypeError!
# }

# 验证:可哈希性
print(hash("string"))    # ✅ 可哈希
print(hash(123))         # ✅ 可哈希
print(hash((1, 2)))      # ✅ 可哈希
# print(hash([1, 2]))    # ❌ TypeError!

3. 字典的访问与修改

🔍 访问值

person = {"name": "小明", "age": 18, "city": "北京"}

# 方法 1:方括号访问(键不存在会报错)
print(person["name"])  # 小明
# print(person["email"])  # KeyError!

# 方法 2:get() 方法(键不存在返回 None 或默认值)
print(person.get("age"))        # 18
print(person.get("email"))      # None
print(person.get("email", "无"))  # 无

# 方法 3:in 判断键是否存在
print("name" in person)   # True
print("email" in person)  # False

🔧 修改值

person = {"name": "小明", "age": 18, "city": "北京"}

# 修改已有键
person["age"] = 19
print(person)  # {'name': '小明', 'age': 19, 'city': '北京'}

# 添加新键
person["email"] = "xiaoming@example.com"
print(person)  # {..., 'email': 'xiaoming@example.com'}

# 批量更新
person.update({"city": "上海", "phone": "13800138000"})
print(person)  # {..., 'city': '上海', 'phone': '13800138000'}

第二部分:字典常用方法

4. 添加与更新

方法 说明 示例 结果
update() 批量更新/添加 d.update({"a":1}) 更新字典
setdefault() 键不存在则设置默认值 d.setdefault("a", 0) 返回值

🔍 示例

person = {"name": "小明", "age": 18}

# update - 批量更新
person.update({"age": 19, "city": "北京"})
print(person)  # {'name': '小明', 'age': 19, 'city': '北京'}

# update - 添加多个
person.update(email="xiaoming@example.com", phone="13800138000")
print(person)

# setdefault - 键不存在则设置
person.setdefault("gender", "男")
print(person)  # {..., 'gender': '男'}

# setdefault - 键已存在则不变
person.setdefault("gender", "女")
print(person)  # {..., 'gender': '男'}(不变)

# 实用:计数器
counts = {}
for char in "hello":
    counts.setdefault(char, 0)
    counts[char] += 1
print(counts)  # {'h': 1, 'e': 1, 'l': 2, 'o': 1}

5. 删除操作

方法 说明 返回值 键不存在
pop() 删除指定键 KeyError
popitem() 删除最后一项 (键,值) KeyError
clear() 清空字典 None -
del 删除语句 - KeyError

🔍 示例

person = {"name": "小明", "age": 18, "city": "北京", "email": "x@example.com"}

# pop - 删除指定键
age = person.pop("age")
print(f"删除的年龄:{age}")  # 18
print(person)  # {'name': '小明', 'city': '北京', 'email': 'x@example.com'}

# pop - 带默认值
email = person.pop("phone", "无")
print(f"电话:{email}")  # 无

# popitem - 删除最后一项(3.7+ 是插入顺序的最后)
last = person.popitem()
print(f"删除的项:{last}")  # ('email', 'x@example.com')

# clear - 清空
person.clear()
print(person)  # {}

# del - 删除语句
person = {"name": "小明", "age": 18}
del person["age"]
print(person)  # {'name': '小明'}

# del - 删除整个字典
del person
# print(person)  # NameError!

6. 查找方法

方法 说明 返回类型 示例
get() 获取值 d.get("key")
keys() 获取所有键 视图 d.keys()
values() 获取所有值 视图 d.values()
items() 获取所有键值对 视图 d.items()

🔍 示例

person = {"name": "小明", "age": 18, "city": "北京"}

# keys - 所有键
keys = person.keys()
print(keys)  # dict_keys(['name', 'age', 'city'])
print(list(keys))  # ['name', 'age', 'city']

# values - 所有值
values = person.values()
print(values)  # dict_values(['小明', 18, '北京'])
print(list(values))  # ['小明', 18, '北京']

# items - 所有键值对
items = person.items()
print(items)  # dict_items()
print(list(items))  # 

# 视图是动态的
person["email"] = "x@example.com"
print(keys)  # dict_keys(['name', 'age', 'city', 'email']) 自动更新!

7. 字典遍历技巧

🔍 多种遍历方式

person = {"name": "小明", "age": 18, "city": "北京"}

# 1. 遍历键(默认)
for key in person:
    print(key)  # name, age, city

# 2. 遍历键(显式)
for key in person.keys():
    print(key)

# 3. 遍历值
for value in person.values():
    print(value)  # 小明,18, 北京

# 4. 遍历键值对(推荐)
for key, value in person.items():
    print(f"{key}: {value}")
# name: 小明
# age: 18
# city: 北京

# 5. 带索引遍历
for i, (key, value) in enumerate(person.items(), 1):
    print(f"{i}. {key} = {value}")

# 6. 条件遍历
for key, value in person.items():
    if isinstance(value, int):
        print(f"{key} 是数字:{value}")

第三部分:字典推导式

8. 基础语法

📝 语法格式

{键表达式:值表达式 for 变量 in 序列}

🔍 示例

# 传统方式
squares = {}
for i in range(5):
    squares[i] = i ** 2
print(squares)  # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}

# 字典推导式
squares = {i: i ** 2 for i in range(5)}
print(squares)  # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}

# 更多示例
# 1. 键值互换
original = {"a": 1, "b": 2, "c": 3}
swapped = {v: k for k, v in original.items()}
print(swapped)  # {1: 'a', 2: 'b', 3: 'c'}

# 2. 字符串转字典
text = "hello"
char_count = {char: text.count(char) for char in text}
print(char_count)  # {'h': 1, 'e': 1, 'l': 2, 'o': 1}

# 3. 列表转字典
keys = ["name", "age", "city"]
values = ["小明", 18, "北京"]
person = {k: v for k, v in zip(keys, values)}
print(person)  # {'name': '小明', 'age': 18, 'city': '北京'}

# 4. 过滤 None 值
data = {"a": 1, "b": None, "c": 3, "d": None}
cleaned = {k: v for k, v in data.items() if v is not None}
print(cleaned)  # {'a': 1, 'c': 3}

9. 条件过滤

🔍 示例

numbers = {1: 10, 2: 20, 3: 30, 4: 40, 5: 50}

# 筛选偶数键
even_keys = {k: v for k, v in numbers.items() if k % 2 == 0}
print(even_keys)  # {2: 20, 4: 40}

# 筛选值大于 25
large_values = {k: v for k, v in numbers.items() if v > 25}
print(large_values)  # {3: 30, 4: 40, 5: 50}

# 多个条件
result = {k: v for k, v in numbers.items() if k % 2 == 0 if v > 25}
print(result)  # {4: 40}

# if-else 表达式
status = {k: "大" if v > 25 else "小" for k, v in numbers.items()}
print(status)  # {1: '小', 2: '小', 3: '大', 4: '大', 5: '大'}

# 实用:统计字母频率
text = "hello world"
freq = {char: text.count(char) for char in text if char != " "}
print(freq)  # {'h': 1, 'e': 1, 'l': 3, 'o': 2, 'w': 1, 'r': 1, 'd': 1}

第四部分:集合详解

10. 什么是集合?

📖 定义

集合(Set) 是 Python 中的无序、不重复元素集合,支持数学集合运算(交集、并集、差集等)。

┌─────────────────────────────────────────────────────────────┐
│                    集合的本质                                │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  {1, 2, 3, 4, 5}                                            │
│                                                             │
│  核心特性:                                                  │
│  ✅ 无序(Unordered)- 元素无固定顺序                        │
│  ✅ 不重复(Unique)- 自动去重                               │
│  ✅ 可变(Mutable)- 可以添加、删除元素                      │
│  ✅ 元素不可变 - 集合元素必须是可哈希类型                    │
│                                                             │
│  冻结集合(frozenset):                                     │
│  ❌ 不可变 - 创建后不能修改                                  │
│  ✅ 可用作字典的键                                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

11. 集合的创建

📝 创建方式

# 1. 花括号创建
set1 = {1, 2, 3, 4, 5}
set2 = {"苹果", "香蕉", "橙子"}

# 2. 空集合(注意:{} 是空字典!)
set3 = set()  # ✅ 正确
# set4 = {}   # ❌ 这是空字典!

# 3. set() 转换
set5 = set("hello")  # {'h', 'e', 'l', 'o'}(去重)
set6 = set([1, 2, 2, 3, 3, 3])  # {1, 2, 3}(去重)
set7 = set((1, 2, 3))  # {1, 2, 3}

# 4. 集合推导式
set8 = {x ** 2 for x in range(5)}
print(set8)  # {0, 1, 4, 9, 16}

print(f"set1: {set1}")
print(f"set5: {set5}")
print(f"set6: {set6}")

# 验证类型
print(type({}))      # <class 'dict'>
print(type(set()))   # <class 'set'>

12. 集合的增删操作

🔧 添加元素

方法 说明 示例
add() 添加单个元素 s.add(5)
update() 添加多个元素 s.update([1,2,3])
fruits = {"苹果", "香蕉"}

# add - 添加单个
fruits.add("橙子")
print(fruits)  # {'苹果', '香蕉', '橙子'}

# add - 重复添加无效果
fruits.add("苹果")
print(fruits)  # {'苹果', '香蕉', '橙子'}(不变)

# update - 添加多个
fruits.update(["葡萄", "西瓜"])
print(fruits)  # {'苹果', '香蕉', '橙子', '葡萄', '西瓜'}

# update - 从其他集合添加
more_fruits = {"草莓", "蓝莓"}
fruits.update(more_fruits)
print(fruits)

🗑️ 删除元素

方法 说明 元素不存在
remove() 删除指定元素 KeyError
discard() 删除指定元素 无错误
pop() 随机删除一个 KeyError(空集合)
clear() 清空集合 -
fruits = {"苹果", "香蕉", "橙子", "葡萄"}

# remove - 删除指定元素
fruits.remove("香蕉")
print(fruits)  # {'苹果', '橙子', '葡萄'}
# fruits.remove("西瓜")  # KeyError!

# discard - 删除指定元素(安全)
fruits.discard("橙子")
print(fruits)  # {'苹果', '葡萄'}
fruits.discard("西瓜")  # 无错误

# pop - 随机删除一个
removed = fruits.pop()
print(f"删除了:{removed}")

# clear - 清空
fruits.clear()
print(fruits)  # set()

13. 集合的数学运算

📊 运算对比表

运算 符号 方法 说明
交集 & intersection() 共同元素
并集 | union() 所有元素
差集 - difference() A 有 B 无
对称差集 ^ symmetric_difference() 只在一个中
子集 <= issubset() 是否包含于
超集 >= issuperset() 是否包含

🔍 示例

set_a = {1, 2, 3, 4, 5}
set_b = {4, 5, 6, 7, 8}

# 交集 - 共同元素
print(set_a & set_b)  # {4, 5}
print(set_a.intersection(set_b))  # {4, 5}

# 并集 - 所有元素
print(set_a | set_b)  # {1, 2, 3, 4, 5, 6, 7, 8}
print(set_a.union(set_b))  # {1, 2, 3, 4, 5, 6, 7, 8}

# 差集 - A 有 B 无
print(set_a - set_b)  # {1, 2, 3}
print(set_a.difference(set_b))  # {1, 2, 3}
print(set_b - set_a)  # {6, 7, 8}

# 对称差集 - 只在一个集合中
print(set_a ^ set_b)  # {1, 2, 3, 6, 7, 8}
print(set_a.symmetric_difference(set_b))  # {1, 2, 3, 6, 7, 8}

# 子集/超集判断
set_c = {1, 2, 3}
print(set_c <= set_a)  # True(c 是 a 的子集)
print(set_a >= set_c)  # True(a 是 c 的超集)
print(set_c < set_a)   # True(c 是 a 的真子集)

# 不相交判断
set_d = {10, 11, 12}
print(set_a.isdisjoint(set_d))  # True(无共同元素)

💡 实用技巧

# 技巧 1:列表去重
numbers = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
unique = list(set(numbers))
print(unique)  # [1, 2, 3, 4](顺序可能变化)

# 技巧 2:保持顺序去重
numbers = [1, 2, 2, 3, 3, 3, 4]
seen = set()
unique_ordered = []
for n in numbers:
    if n not in seen:
        seen.add(n)
        unique_ordered.append(n)
print(unique_ordered)  # [1, 2, 3, 4]

# 技巧 3:找共同好友
friends_a = {"小明", "小红", "小刚", "小丽"}
friends_b = {"小红", "小刚", "小强", "小华"}
common = friends_a & friends_b
print(f"共同好友:{common}")  # {'小红', '小刚'}

# 技巧 4:找差异
only_a = friends_a - friends_b
only_b = friends_b - friends_a
print(f"只在 A 中:{only_a}")  # {'小明', '小丽'}
print(f"只在 B 中:{only_b}")  # {'小强', '小华'}

第五部分:字典 vs 集合

14. 数据结构对比

┌─────────────────────────────────────────────────────────────┐
│                    数据结构对比                              │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  字典(Dictionary)                                          │
│  ═══════════                                                │
│  • 存储:键值对(Key-Value)                                │
│  • 键:唯一、不可变                                          │
│  • 值:任意类型、可重复                                      │
│  • 访问:通过键访问值 O(1)                                   │
│  • 用途:映射、关联数据                                      │
│                                                             │
│  ─────────────────────────────────────────────────────────  │
│                                                             │
│  集合(Set)                                                 │
│  ═══════                                                    │
│  • 存储:唯一元素                                            │
│  • 元素:不可变、不重复                                      │
│  • 访问:判断存在性 O(1)                                     │
│  • 用途:去重、集合运算、成员检测                            │
│                                                             │
└─────────────────────────────────────────────────────────────┘

🔍 代码对比

# 字典 - 键值映射
student = {"name": "小明", "age": 18, "score": 90}
print(student["name"])  # 通过键取值

# 集合 - 唯一元素
unique_ids = {1001, 1002, 1003, 1004}
print(1001 in unique_ids)  # 判断是否存在

15. 使用场景对比

┌─────────────────────────────────────────────────────────────┐
│                    使用场景对比                              │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  📌 使用字典的场景                                           │
│  ══════════════                                             │
│  • 存储对象的属性(如用户信息)                              │
│  • 建立映射关系(如 ID→名称)                                │
│  • 计数器/频率统计                                           │
│  • 缓存数据                                                  │
│  • 配置信息存储                                              │
│                                                             │
│  ─────────────────────────────────────────────────────────  │
│                                                             │
│  📌 使用集合的场景                                           │
│  ══════════════                                             │
│  • 数据去重                                                  │
│  • 快速成员检测                                              │
│  • 集合运算(交集/并集/差集)                                │
│  • 过滤重复项                                                │
│  • 找共同/差异元素                                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

16. 性能对比

📊 时间复杂度对比

操作 列表 字典 集合
查找 O(n) O(1) O(1)
添加 O(1)* O(1) O(1)
删除 O(n) O(1) O(1)
成员检测 O(n) O(1) O(1)

*列表末尾添加为 O(1),中间添加为 O(n)

🔍 性能测试

import timeit

# 成员检测性能对比
list_large = list(range(10000))
set_large = set(range(10000))
dict_large = {i: i for i in range(10000)}

# 列表查找
list_time = timeit.timeit('9999 in list_large', 
                          globals=globals(), number=1000)
# 集合查找
set_time = timeit.timeit('9999 in set_large', 
                         globals=globals(), number=1000)
# 字典查找
dict_time = timeit.timeit('9999 in dict_large', 
                          globals=globals(), number=1000)

print(f"列表查找时间:{list_time:.4f}秒")
print(f"集合查找时间:{set_time:.4f}秒")
print(f"字典查找时间:{dict_time:.4f}秒")
print(f"集合比列表快约:{list_time/set_time:.0f}倍")

第六部分:综合实战

17. 实战一:通讯录管理系统

📋 项目需求

  1. 添加联系人(姓名、电话、邮箱)
  2. 查询联系人
  3. 修改联系人信息
  4. 删除联系人
  5. 显示所有联系人
  6. 搜索(按姓名/电话)

💻 完整代码

先自行练习,完整代码见下一篇博客


18. 实战二:词频统计工具

📋 项目需求

  1. 输入文本内容
  2. 统计每个单词出现次数
  3. 按频率排序显示
  4. 显示 Top N 高频词
  5. 支持去除停用词

💻 完整代码

先自行练习,完整代码见下一篇博客


19. 实战三:数据去重处理器

📋 项目需求

  1. 输入数据列表
  2. 使用集合去重
  3. 保持原始顺序去重
  4. 找出重复元素
  5. 统计重复次数

💻 完整代码

先自行练习,完整代码见下一篇博客


📝 总结与下一篇预告

本篇核心知识点回顾

┌─────────────────────────────────────────────────────────────┐
│                    知识点思维导图                            │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Python 字典与集合                                           │
│  │                                                          │
│  ├── 字典(Dictionary)                                      │
│  │   ├── 创建({}/dict()/fromkeys)                         │
│  │   ├── 访问([]/get())                                   │
│  │   ├── 修改(赋值/update)                                │
│  │   ├── 删除(pop/popitem/clear/del)                      │
│  │   ├── 遍历(keys/values/items)                          │
│  │   └── 推导式(基础/条件)                                │
│  │                                                          │
│  ├── 集合(Set)                                             │
│  │   ├── 创建(set())                                      │
│  │   ├── 增删(add/update/remove/discard)                  │
│  │   └── 运算(交/并/差/对称差)                            │
│  │                                                          │
│  ├── 字典 vs 集合                                            │
│  │   ├── 结构(键值对 vs 唯一元素)                         │
│  │   ├── 性能(O(1) 查找)                                  │
│  │   └── 场景(映射 vs 去重)                               │
│  │                                                          │
│  └── 实战应用                                                │
│      ├── 通讯录管理系统                                     │
│      ├── 词频统计工具                                       │
│      └── 数据去重处理器                                     │
│                                                             │
└─────────────────────────────────────────────────────────────┘

✅ 学习检查清单

  • 理解字典的键值对结构
  • 掌握字典的增删改查方法
  • 熟练使用字典推导式
  • 理解集合的去重特性
  • 掌握集合的数学运算
  • 清楚字典与集合的区别
  • 完成 3 个实战项目

🚀 下一篇预告

《Python 零基础入门系列(七):函数基础知识(上)》

┌─────────────────────────────────────────────────────────────┐
│                    第七篇内容预告                            │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  1️⃣ 什么是函数                                               │
│     • 函数的概念与作用                                       │
│     • 为什么要使用函数                                       │
│     • DRY 原则(Don't Repeat Yourself)                     │
│                                                             │
│  2️⃣ 函数的定义和调用                                         │
│     • def 关键字                                             │
│     • 函数命名规范                                           │
│     • 调用函数                                               │
│                                                             │
│  3️⃣ 函数的参数                                               │
│     • 位置参数                                               │
│     • 关键字参数                                             │
│     • 默认参数                                               │
│     • 可变参数(*args/**kwargs)                            │
│                                                             │
│  4️⃣ 函数的返回值                                             │
│     • return 语句                                            │
│     • 返回多个值                                             │
│     • 无返回值的情况                                         │
│                                                             │
│  5️⃣ 综合实战                                                 │
│     • 计算器函数                                             │
│     • 数据处理函数                                           │
│     • 工具函数库                                             │
│                                                             │
└─────────────────────────────────────────────────────────────┘

📅 完整系列更新计划

┌─────────────────────────────────────────────────────────────┐
│          🐍 Python 零基础入门系列 · 完整规划(12 篇版)         │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  📌 第一篇:Python 认知 + 环境搭建 + 基础语法                │
│      ✅ 已完成                                               │
│                                                             │
│  📌 第二篇:常用运算符完全详解                               │
│      ✅ 已完成                                               │
│                                                             │
│  📌 第三篇:流程控制——条件判断与循环结构                     │
│      ✅ 已完成                                               │
│                                                             │
│  📌 第四篇:字符串常用操作详解                               │
│      ✅ 已完成                                               │
│                                                             │
│  📌 第五篇:列表与元组——序列操作全解析                       │
│      ✅ 已完成                                               │
│                                                             │
│  📌 第六篇(本篇):字典与集合——映射与去重操作               │
│      ✅ 已完成                                               │
│                                                             │
│  📌 第七篇:函数基础知识(上)                               │
│      🔜 即将发布                                             │
│      • 什么是函数                                            │
│      • 函数的定义和调用                                      │
│      • 函数的参数                                            │
│      • 函数的返回值                                          │
│                                                             │
│  📌 第八篇:函数基础知识(下)                               │
│      🔜 敬请期待                                             │
│      • 函数的文档注释                                        │
│      • 函数的嵌套调用                                        │
│      • 局部变量和全局变量                                    │
│                                                             │
│  📌 第九篇:函数进阶知识                                     │
│      🔜 敬请期待                                             │
│      • 匿名函数(lambda)                                    │
│      • 递归函数                                              │
│      • 高阶函数                                              │
│                                                             │
│  📌 第十篇:闭包和装饰器                                     │
│      🔜 敬请期待                                             │
│      • 闭包的概念与原理                                      │
│      • 装饰器的语法与用法                                    │
│      • 带参数的装饰器                                        │
│                                                             │
│  📌 第十一篇:模块和包                                       │
│      🔜 敬请期待                                             │
│      • 模块的导入与使用                                      │
│      • 常用标准库模块                                        │
│      • 包的创建与结构                                        │
│                                                             │
│  📌 第十二篇及后续:更多进阶内容                             │
│      🔜 敬请期待                                             │
│      • 文件操作                                              │
│      • 异常处理                                              │
│      • 面向对象编程                                          │
│                                                             │
└─────────────────────────────────────────────────────────────┘

📊 系列进度可视化

进度条:████████████████████░░░░ 6/12 完成

✅ ✅ ✅ ✅ ✅ ✅ 🔜 🔜 🔜 🔜 🔜 🔜

📚 推荐学习资源

类型 名称 链接
官网 Python 官方网站 https://www.python.org
文档 Python 官方文档(中文) https://docs.python.org/zh-cn/3/
教程 菜鸟教程 Python https://www.runoob.com/python3/
教程 廖雪峰 Python 教程 https://www.liaoxuefeng.com/wiki/1016959663602400
练习 LeetCode https://leetcode.cn
练习 CheckiO(游戏化学习) https://checkio.org
社区 Stack Overflow https://stackoverflow.com
社区 Python 中文社区 https://python-china.org

💬 结语

"字典和集合是 Python 高效数据处理的核心,掌握它们,你就掌握了快速查找和去重的利器。"

恭喜你完成了 Python 入门系列的第六篇!现在你已经:

  • ✅ 掌握了字典的创建、访问、增删改查
  • ✅ 学会了字典推导式的高效用法
  • ✅ 理解了集合的去重特性与数学运算
  • ✅ 清楚字典与集合的区别与使用场景
  • ✅ 完成了通讯录、词频统计、数据去重 3 个实战项目

下一步建议

  1. 把实战代码亲手敲一遍,尝试添加新功能
  2. 用字典和集合解决日常数据管理问题
  3. 复习前六篇内容,形成完整知识体系
  4. 准备迎接第七篇——函数基础知识!

记住选择合适的数据结构能让代码更高效、更优雅!


📅 更新时间:2026 年 3 月 18 日
✍️ 作者:书到用时方恨少! | 专注 Python 教学与 AI 技术分享
💌 如有疑问,欢迎在评论区留言讨论!

如果觉得这篇文章有帮助,请点赞👍、收藏⭐、转发🔄,让更多的小伙伴一起加入 Python 学习的行列!


📢 系列文章索引

篇数 主题 状态 链接
第一篇 Python 认知 + 环境搭建 + 基础语法 ✅ 已完成 点击查看
第二篇 常用运算符完全详解 ✅ 已完成 点击查看
第三篇 流程控制——条件判断与循环结构 ✅ 已完成 点击查看
第四篇 字符串常用操作详解 ✅ 已完成 点击查看
第五篇 列表与元组——序列操作全解析 ✅ 已完成 点击查看
第六篇 字典与集合——映射与去重操作 ✅ 已完成 当前文章
第七篇 函数基础知识(上) 🔜 敬请期待 敬请期待
第八篇 函数基础知识(下) 🔜 敬请期待 敬请期待
第九篇 函数进阶知识 🔜 敬请期待 敬请期待
第十篇 闭包和装饰器 🔜 敬请期待 敬请期待
第十一篇 模块和包 🔜 敬请期待 敬请期待
第十二篇 更多进阶内容 🔜 敬请期待 敬请期待

🔔 订阅提醒:关注我,不错过每一篇更新!

更多推荐