Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
迭代PYTHON字典列表中的值_Python_Loops_Dictionary_Iteration - Fatal编程技术网

迭代PYTHON字典列表中的值

迭代PYTHON字典列表中的值,python,loops,dictionary,iteration,Python,Loops,Dictionary,Iteration,我有一份字典清单。每个都有一个键和一个3值列表。每个值都是一个ADC读数,我有一个函数来获取并输出转换后的值 但是,我想获取每个值并使用此函数进行转换 for value in my_list[0].itervalues(): print value 这会将值打印为一个列表,但我希望分别获取每个值并将其传递给要转换的函数 for value in my_list: print value 这把每本字典都打印出来 我不知道如何将这些循环嵌套在一起,以获取各个值,并将转换后的值

我有一份字典清单。每个都有一个键和一个3值列表。每个值都是一个ADC读数,我有一个函数来获取并输出转换后的值

但是,我想获取每个值并使用此函数进行转换

for value in my_list[0].itervalues():
  print value
这会将值打印为一个列表,但我希望分别获取每个值并将其传递给要转换的函数

 for value in my_list:
      print value
这把每本字典都打印出来

我不知道如何将这些循环嵌套在一起,以获取各个值,并将转换后的值附加到当前字典列表中,或者生成一个单独的字典列表。我想追加会更有效。

您可以使用函数将函数应用于所有值项:

for value in my_list[0].itervalues():
  print map(your_func,value)
如果你想创建一本新词典,你可以在dict理解中完成:

new_dict={k:map(your_func,val) for k, val in your_dict.iteritems()}
>>> [my_func(i,j) for i,j in l]
[3, 7, 11]
此外,您可能会注意到,这取决于函数签名和值,例如,如果函数接受多个参数,则不能在此处使用
map

例如:

>>> def my_func(a,b):
...   return a+b
... 
>>> l=[(1,2),(3,4),(5,6)]
>>> map(my_func,l)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: my_func() takes exactly 2 arguments (1 given)

这是可行的,但要在每一本字典中添加新的值?@cc6g11在这种情况下,您可以使用dict理解!检查编辑!如果我需要传递两个参数呢。就像前面的字典中的值一样,但也包括每个字典的键。@Kasra