如何自动将带有值的新键添加到现有键中?

问题描述 投票:0回答:1

我有以下问题。我想使用 for 函数自动创建具有混合键的字典,如下所示:

  • 我有一个主键“书籍”,对于这个键我想添加书籍(这是一个新键)和数量(值) 示例:store_dic = {'books': {'book0': 0, 'book1': 1,'book2':2}}

我试过这个:

store_dic= dict()

book_list = [[None] for _ in range(3)]
for i in range(3):
    book_list[i] = "book"+str(i)
    store_dic= {'books': {book_list[i] : i}}
print(store_dic)

目前字典仅显示主键中插入值的最后一个键。

Output
{'books': {'book2': 2}}

请帮我用多个具有值的键更新主键。

python dictionary key mixed
1个回答
0
投票

你的错误是你覆盖了

store_dict
每个循环,这就是为什么你只得到一个元素,

这是您想要的代码:

store_dic= dict()

store_dic["books"] = []
book_list = [[None] for _ in range(3)]
for i in range(3):
    book = {"book%s"%str(i) : i}
    store_dic["books"].append(book)

print(store_dic)

输出:

{'books': [{'book0': 0}, {'book1': 1}, {'book2': 2}]}
© www.soinside.com 2019 - 2024. All rights reserved.