Python 循环+字典封神用法!简单易懂,新手必学!
在 Python 编程世界里,字典(dict)是最核心的数据结构,循环是最基础的逻辑控制。
一、为什么循环+字典是Python必学组合?
字典以键值对的形式存储数据,结构清晰、查询速度极快,我们日常用到的用户信息、接口数据、配置参数、统计结果,几乎都用字典承载。
而循环的作用,就是快速遍历、处理、修改字典中的数据。可以说,写不好循环+字典,就写不好Python代码。掌握高级写法,不仅能让代码精简一半,更能体现你的编程功底。
二、基础必掌握:字典的3种核心遍历方式
先夯实基础,这三种循环遍历字典的写法,是所有高级技巧的前提,务必熟记。
基础遍历方式
遍历字典的键(Key)是最基础的方式,默认循环字典时只会遍历所有键:
user_info = {"name": "程序员小C", "age": 24, "city": "北京", "job": "Python开发"}
for key in user_info:
print(f"键:{key},值:{user_info[key]}")
同时遍历键和值(最推荐)用 items() 方法一次性获取键值对:
for key, value in user_info.items():
print(f"{key} : {value}")
只遍历字典的值(Value)用 values() 方法:
for value in user_info.values():
print(f"字典的值:{value}")
三、进阶神技:一行代码搞定字典推导式
循环+字典的最强语法糖——字典推导式,用一行代码实现循环创建、筛选字典,比普通循环优雅10倍!
字典推导式
字典推导式用一行代码实现循环创建、筛选字典:
基础字典推导式:
num_dict = {i: i**2 for i in range(1, 6)}
print(num_dict) # 输出:{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
带条件的筛选推导式:
even_dict = {i: i**2 for i in range(1, 11) if i % 2 == 0}
print(even_dict) # 输出:{2: 4, 4: 16, 6: 36, 8: 64, 10: 100}
四、实战避坑:循环遍历删除字典元素
这是新手最容易踩的坑!直接遍历字典删除元素会报错,正确做法是遍历字典的副本:
遍历删除字典元素
直接遍历字典删除元素会报错,正确做法是遍历字典的副本:
score_dict = {"语文": 85, "数学": 59, "英语": 92, "物理": 66}
for key in list(score_dict.keys()):
if score_dict[key] < 60:
del score_dict[key]
print(score_dict) # 输出:{'语文': 85, '英语': 92, '物理': 66}
五、高频实战:循环处理嵌套字典+列表
真实开发中,最常见的就是列表嵌套字典,用循环轻松批量处理数据:
处理嵌套字典+列表
循环遍历列表嵌套字典,批量处理数据:
students = [
{"name": "张三", "score": 88},
{"name": "李四", "score": 95},
{"name": "王五", "score": 72},
{"name": "赵六", "score": 90}
]
max_score = 0
max_name = ""
for stu in students:
if stu["score"] > max_score:
max_score = stu["score"]
max_name = stu["name"]
print(f"最高分:{max_name},分数:{max_score}")
六、实用技巧:循环实现字典排序、合并、统计
字典排序、合并、统计
按值排序字典:
data = {"apple": 5, "banana": 3, "orange": 8}
for k, v in sorted(data.items(), key=lambda x: x[1]):
print(k, v)
循环合并多个字典:
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4}
dict3 = {"e": 5}
new_dict = {}
for d in [dict1, dict2, dict3]:
new_dict.update(d)
print(new_dict)
循环统计元素次数:
fruits = ["apple", "banana", "apple", "orange", "banana", "apple"]
count_dict = {}
for fruit in fruits:
if fruit in count_dict:
count_dict[fruit] += 1
else:
count_dict[fruit] = 1
print(count_dict)
七、总结
循环+字典是Python最基础也最重要的组合,看似简单,却藏着无数实用技巧:
• 日常遍历优先用 items(),简洁高效;
• 快速创建字典用推导式,一行搞定;
• 遍历删除用副本,避开报错坑;
• 嵌套数据、排序、统计、合并,全靠循环+字典实现。
更多推荐



所有评论(0)