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

如何自动向字典的已有主键添加带值的新子键?

问题分析与解决方案

你的代码问题在于每次循环都完全重新创建了store_dic字典,之前循环添加的内容会被直接覆盖,所以最后只保留了最后一次循环的结果。

方案1:先初始化嵌套结构,循环添加键值对

先创建好包含空books子字典的主字典,之后每次循环只往books里新增键值对:

store_dic = {'books': {}}
for i in range(3):
    # 用f-string生成键名,比拼接字符串更简洁
    book_key = f"book{i}"
    store_dic['books'][book_key] = i
print(store_dic)

输出:

{'books': {'book0': 0, 'book1': 1, 'book2': 2}}

方案2:用字典推导式(更简洁)

如果不需要中间步骤,直接用字典推导式一步生成目标字典:

store_dic = {'books': {f"book{i}": i for i in range(3)}}
print(store_dic)

输出和上面完全一致。

额外说明

你原来定义的book_list其实是多余的,不管用哪种方案都可以直接生成键名,不需要额外维护列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 06:52:03