如何在列表内的字典中进行迭代,这是字典的值

时间:2019-05-26 21:12:21

标签: python python-3.x list dictionary

我一直很难理解应该如何解决这个问题。

我有一本字典,其中包含每个键值的列表。

每个列表包含n个字典。

在这些词典中,对于主词典的每个键值,我需要总结一个值。

我不知道如何遍历列表内的字典,这是更大字典的值。

我将在下面提供主要代码。有人可以帮助我了解如何解决该问题吗?

输入,其中组是字典,“ Hydrofilm ...”是关键值之一:

groups['Hydrofilm 10cm x 15cm VP Adh Film Dress']

输出,它是与该键值相关的字典的列表:

[{'bnf_code': '20030100236',
  'items': 1,
  'practice': 'P81069',
  'bnf_name': 'Hydrofilm 10cm x 15cm VP Adh Film Dress',
  'nic': 10.6,
  'act_cost': 9.83,
  'quantity': 20},
 {'bnf_code': '20030100236',
  'items': 1,
  'practice': 'P81100',
  'bnf_name': 'Hydrofilm 10cm x 15cm VP Adh Film Dress',
  'nic': 10.6,
  'act_cost': 9.81,
  'quantity': 20},
 {'bnf_code': '20030100236',
  'items': 1,
  'practice': 'J81043',
  'bnf_name': 'Hydrofilm 10cm x 15cm VP Adh Film Dress',
  'nic': 5.3,
  'act_cost': 4.92,
  'quantity': 10},
 {'bnf_code': '20030100236',
  'items': 1,
  'practice': 'J81056',
  'bnf_name': 'Hydrofilm 10cm x 15cm VP Adh Film Dress',
  'nic': 5.3,
  'act_cost': 4.92,
  'quantity': 10},
 {'bnf_code': '20030100236',
  'items': 1,
  'practice': 'J81057',
  'bnf_name': 'Hydrofilm 10cm x 15cm VP Adh Film Dress',
  'nic': 5.3,
  'act_cost': 4.92,
  'quantity': 10}]

需要加总的键是“项”

预期结果:

sum_list = [1,1,1,1,1]

2 个答案:

答案 0 :(得分:0)

将该字典列表分配给elements。 然后我们想要:

>>> [element['items']  for element in elements]
[1, 1, 1, 1, 1]

答案 1 :(得分:0)

sum_list = [element['items'] for element in dataSet if element['bnf_code'] == 'Hydrofilm 10cm x 15cm VP Adh Film Dress'