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

如何将字典与数组合并为指定格式的嵌套列表?

解决字典与数组的匹配合并问题

这问题挺常见的,我来给你几个实用的Python解法,都是日常开发里常用的操作:

首先先明确示例数据,方便你对照:

# 你的字典a
a = {'Volvo': 657898, 'Volkswagen': 387564}
# 你的数组b
b = [['Volvo', 'VO'], ['Volkswagen', 'VW']]

方法1:列表推导式(简洁高效)

这是最Pythonic的写法,一行就能搞定,适合熟悉Python的同学:

result = [item + [a[item[0]]] for item in b]

逻辑很简单:遍历数组b里的每一个子列表item,用item[0](也就是品牌名称)去字典a里取出对应的数值,再把这个数值拼接到子列表的末尾,最后组成新的嵌套列表。

方法2:常规for循环(新手友好)

要是你刚学Python,觉得列表推导式有点绕,那就用分步的for循环来实现,逻辑更直观:

result = []
for brand_info in b:
    # 取出品牌名称,用来匹配字典的键
    brand_name = brand_info[0]
    # 从字典中获取对应的数值
    brand_value = a[brand_name]
    # 把数值追加到当前子列表后面,再加入结果列表
    result.append(brand_info + [brand_value])

进阶:处理键不存在的情况

如果数组b里存在字典a没有的品牌名,上面的代码会抛出KeyError报错。这时候可以用字典的get()方法来做容错处理,比如给不存在的键设置一个默认值(比如None或者0):

# 默认值设为None,你也可以改成0或者其他合适的值
result = [item + [a.get(item[0], None)] for item in b]

运行完上面的代码,你就能得到想要的格式:

[['Volvo', 'VO', 657898], ['Volkswagen', 'VW', 387564]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:21:25