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

如何将Python中由元组与整数构成的列表转换为嵌套字典

解决方法

你可以直接通过基础的for循环实现转换,逻辑非常好理解,完全不需要复杂的语法:

方法1:纯基础语法实现(推荐初学者使用)

不需要引入任何额外库,每一步逻辑都清晰可见:

mylist = [ (('ART', 'bar'), 2), (('ART', 'get'), 1), (('b', 'bet'), 1), (('b', 'chest'), 1), (('b', 'kart'), 2), (('b', 'zee'), 1)]
my_dict = {}

for item in mylist:
    # 拆解当前元素:第一个子元组是两级key,第二个是对应值
    (first_key, second_key), count = item
    # 如果一级key还不存在,先创建对应的空二级字典
    if first_key not in my_dict:
        my_dict[first_key] = {}
    # 给二级字典赋值
    my_dict[first_key][second_key] = count

运行后my_dict就是你需要的嵌套字典结构。

方法2:使用collections.defaultdict简化代码

如果不想手动判断一级key是否存在,可以用Python标准库的defaultdict自动处理初始化逻辑:

from collections import defaultdict

mylist = [ (('ART', 'bar'), 2), (('ART', 'get'), 1), (('b', 'bet'), 1), (('b', 'chest'), 1), (('b', 'kart'), 2), (('b', 'zee'), 1)]
my_dict = defaultdict(dict)

for (first_key, second_key), count in mylist:
    my_dict[first_key][second_key] = count

# 如果你需要最终是普通字典类型,加下面这行转换即可
# my_dict = dict(my_dict)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 16:36:02