【问题标题】:Best way to loop through a dictionary embedded in list and assign key values to variables遍历嵌入在列表中的字典并将键值分配给变量的最佳方法
【发布时间】:2021-04-05 17:04:25
【问题描述】:

高级:我正在尝试将具有唯一值的相同键分配给它们各自的变量。相同键的数量可以是 1 个或多个。我有一个列表显示在这里: [{'client_id_new': 'client key 1'}, {'client_id_new': 'client key 2'}]

此行允许我检索相同键的数量:newClientIds = sum('client_id_new' in d for d in parsed) 我从这个值中减去 1,以便它可以与从 0 开始的索引一致。

我的问题:将唯一值分配给将在整个字典中迭代的变量的最佳方法是什么?

补充问题: 我想访问列表中的字典值并将它们分配给一个变量,该变量包含列表中以逗号分隔的全部值。

例如,一个 for 循环会输出如下所示的最终结果: print(allValues) 所有值(字符串变量看起来像这样): "client key 1", "client key 2"

如果上面还有更多的值,例如:

[{'client_id_new': 'client key 1'}, {'client_id_new': 'client key 2'}, {'client_id_new': 'client key 344'}, {'client_id_new': 'client key 327'}]

那么“allValues”变量的输出将如下所示:

"client key 1", "client key 2", "client key 344", "client key 327"

我的尝试看起来像这样,但我不确定这是否是最好的方法。

count = 0

while (count <= newClientIds):
    newString = parsed[count] + newString
    count += 1
    print(newString)

【问题讨论】:

  • 你的演示很棒,你的问题不清楚,你能解释一下你的输入是什么,预期的输出是什么?
  • 谢谢!当然,我的问题以及最终我想要一个循环做什么或最好的方法是遍历列表中的嵌入式字典并将相同的键分配给它们自己的唯一变量。
  • 您可以更改您的问题并添加示例输入和输出吗?像这样:myinput = [...] 等。
  • 我已经更新了我的问题

标签: json python-3.x list dictionary


【解决方案1】:
while (count <= newClientIds):
    if (count == 0):
        newString = parsed[count]['client_id_new']
    else:
        newString = parsed[count]['client_id_new'] + ", " + newString
            
    count += 1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多