You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Python嵌套字典的键与列表值拼接为指定格式的列表?

实现方案分享

首先得提一句:你用list当变量名不太合适哦,这是Python的内置类型,容易引发冲突,我下面的示例里会改成my_dict~

方法一:简洁的列表推导式

这是最Pythonic的写法,一行就能搞定:

my_dict = {"A": ["1", "2", "3"], "B": ["2"], "C": ["1", "2"]}
result = [f"{key}.{value}" for key, values in my_dict.items() for value in values]
print(result)
# 输出: ['A.1', 'A.2', 'A.3', 'B.2', 'C.1', 'C.2']

原理很简单:先遍历字典的每一组键值对,再遍历每个键对应的列表元素,用f-string把键和元素用.拼接起来,最后自动收集成列表。

方法二:分步循环(适合新手理解)

如果觉得列表推导式有点绕,用两层普通循环也能实现,逻辑更直观:

my_dict = {"A": ["1", "2", "3"], "B": ["2"], "C": ["1", "2"]}
result = []
# 外层循环取字典的键和对应的列表
for key, values in my_dict.items():
    # 内层循环遍历列表里的每个元素
    for value in values:
        # 拼接后添加到结果列表
        result.append(f"{key}.{value}")
print(result)
# 输出和上面一致

兼容旧Python版本的写法

如果你的Python版本是3.6之前(不支持f-string),可以换成str.format()的方式:

# 列表推导式版本
result = ["{}.{}".format(key, value) for key, values in my_dict.items() for value in values]
# 循环版本
result.append("{}.{}".format(key, value))

内容的提问来源于stack exchange,提问作者Floris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 10:13:22