【问题标题】:Looping through individual dicts and inserting into a nested dict循环遍历单个字典并插入嵌套字典
【发布时间】:2020-03-04 10:28:33
【问题描述】:

我希望遍历从数据库中提取的单个嵌套字典,并使用所有嵌套字典更新单个新字典。我正在使用计数器将键值分配给被拉入的字典,但逻辑已关闭,我无法获得所需的输出。 我的 CursorByName 为数据分配正确的键和值。

代码:

counter = 1
newdict = {}
dictofdict = {}
for row in CursorByName(cursor):
    while counter < 4:
        dictofdict = {counter : row}
        newdict.update(dictofdict)
        print(newdict)
        counter += 1

输出

{1: {key1:value1}}
{1: {key1:value1}, 2: {key2:value2}}
{1: {key1:value1}, 2: {key2:value2}, 3: {key3:value3}}

目标输出

{1: {key1:value1}, 2: {key2:value2}, 3: {key3:value3}, 4: {key4:value4}, etc}

【问题讨论】:

  • 您的操作似乎没有任何问题。您只需要在循环后打印一次,而不是每次迭代打印一次。我也会做while counter &lt;= 4
  • 感谢您的反馈。我简直不敢相信这个细节让我大吃一惊。

标签: python loops dictionary nested


【解决方案1】:

使用字典理解:

In [1]: d = {i: {'key{}'.format(i): 'value{}'.format(i)} for i in range(1, 4)}

In [2]: d
Out[2]: {1: {'key1': 'value1'}, 2: {'key2': 'value2'}, 3: {'key3': 'value3'}}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-17
    • 2019-03-22
    • 2019-01-16
    • 2017-07-25
    相关资源
    最近更新 更多