python 字典 一个key 多 value 遍历

在Python中,如果一个键对应多个值,你需要确保这些值被存储在一个容器类型(如列表或集合)中。你可以使用默认字典(collections.defaultdict)来简化这个过程。以下是一个示例代码:

复制代码
from collections import defaultdict
 
# 创建一个默认字典,其中值将被初始化为一个列表
dd = defaultdict(list)
 
# 假设有多个键对应相同的值
keys = ['key1', 'key1', 'key2', 'key2', 'key3']
values = [1, 2, 3, 4, 5]
 
# 将值分配给对应的键
for key, value in zip(keys, values):
    dd[key].append(value)
 
# 遍历默认字典
for key, value_list in dd.items():
    print(f"Key: {key}, Values: {value_list}")

结果:

Key: key1, Values: [1, 2]

Key: key2, Values: [3, 4]

Key: key3, Values: [5]

如果你不想使用defaultdict,也可以手动检查键是否存在并初始化列表:

复制代码
# 创建一个普通字典
d = {}
 
# 假设有多个键对应相同的值
keys = ['key1', 'key1', 'key2', 'key2', 'key3']
values = [1, 2, 3, 4, 5]
 
# 将值分配给对应的键
for key, value in zip(keys, values):
    if key not in d:
        d[key] = [value]
    else:
        d[key].append(value)
 
# 遍历普通字典
for key, value_list in d.items():
    print(f"Key: {key}, Values: {value_list}")

这段代码的输出与使用defaultdict的示例相同。

相关推荐
项目題供诗几秒前
黑马python(五)
python
SundayBear5 分钟前
适合有C基础后快速上手C++
开发语言·c++
l1o3v1e4ding22 分钟前
python-docx 库教程
开发语言·python·c#
酷爱码25 分钟前
Python虚拟环境与Conda的使用方式详解
开发语言·python·算法
大模型真好玩33 分钟前
GRPO 代码实战!让大模型具备思维能力,打造你的专属DeepSeek
人工智能·python·deepseek
倔强的石头10635 分钟前
【Linux指南】文件系统基础操作与路径管理
linux·运维·服务器
码海漫游者836 分钟前
让Python成为你的网站引擎:Django全栈开发初体验!!!
数据库·python·其他·django
whoarethenext40 分钟前
使用 C++ 和 OpenCV 构建智能答题卡识别系统
开发语言·c++·opencv
秋山落叶万岭花开ღ1 小时前
树的基本概念与操作:构建数据结构的层级世界
数据结构·python·算法
m0_516484671 小时前
C#winform多选框代码
开发语言·c#