2017-06-20 129 views
-7

我有下面的数据结构呼叫letters_dict:Python的迭代多值嵌套字典

'aa': {'Price': '147,130,104,24,19', 
     'Qty': '262,53,65,80,185,210', 
     'Time': '51302324915,51308461317,51316258845,51324326568'}, 

'bb': {'Price': '196,203,209,177,150,160,160,180,194', 
     'Qty': '129,268,225,228,176,76,17,45,207,61,143,195,230,97', 
     'Time': '51305086913,51314981179,51323072726,51435766657,51597990966'}} 

欲遍历外字典的每个项目,然后内的值,价格数量和时间,然后每个价格在数量和时间内进行数据处理。做这个的最好方式是什么?

使用key_level2在使用key_level1和val_level1,然后再遍历内在价值外值
+1

请显示您到目前为止尝试过的内容 – kuro

+0

另外,内部字典中的值是逗号分隔值的*字符串*。 –

回答

0

首先迭代,val_level2:

for key_level1, val_level1 in r.items(): 
     for key_level2, val_level2 in val_level1.items(): 
      for val in val_level2.split(','): 
       # Example: 
       # do something 
       print(key_level1, key_level2, val) 
+0

那还是打印整个字典不只是价格 – Jaron787

+0

这还是不会遍历价格表中的每个逗号分隔值 – Jaron787

+0

@ Jaron787,终于明白了你的要求。我想这就是你要求的...(编辑答案) – nikpod

0
for key_1 in letters_dict: 
    for key_2 in letters_dict[key_1]: 
     for value in letters_dict[key_1][key_2].split(','): 

这是我最简单的方法(并不意味着最好的) 。 我不知道为什么你甚至没有尝试过......

+0

AttributeError:'dict'对象没有'split'属性 – Jaron787

+0

是的,编辑了答案。 –