使用dicts数组从python词典中提取值

时间:2014-04-27 18:52:45

标签: python arrays dictionary

我这个数据结构,但似乎有一点精神障碍。我无法解决如何获得dicts中大小键的值。

dups = {'2222': [{'Book': 'Lord of the Rings', 'size': '100'},
                 {'Book': 'Woman in Black', 'size': '800'}],
        '3333': [{'Book': 'The Hobbit', 'size': '500'},
                 {'Book': '100 Dalmations', 'size': '600'}]}

我试过这个:

for i in dups:
    book = i[1]
        for size in book
        print size'['size']

但这不起作用!

2 个答案:

答案 0 :(得分:0)

我想你想要:

for i in dups:
    book_list = dups[i]
    for book in book_list:
        print book['size']

dups[i]为您提供了可以迭代的列表。

答案 1 :(得分:0)

您可以在迭代时使用.iteritems()来检索值和键:

>>> for key, value in dups.iteritems():
...     print key, value
...
3333 [{'Book': 'The Hobbit', 'size': '500'}, {'Book': '100 Dalmations', 'size': '600'}]
2222 [{'Book': 'Lord of the Rings', 'size': '100'}, {'Book': 'Woman in Black', 'size': '800'}]
>>>

然后你可以在循环中嵌套第二个循环来重复遍历所有键和值。