解析dict的dict时,是否有可以用来访问嵌套dict的通配符选项?
我有这个数据:
{'6': {'Change': '109,438',
'Name': 'Prologis Inc',
'Owned': '609,826',
'Weight': ' 2.14'},
'7': {'Change': '48,032',
'Name': 'The Home Depot Inc',
'Owned': '208,967',
'Weight': ' 2.02'},
'8': {'Change': '61,235',
'Name': 'Facebook Inc A',
'Owned': '220,558',
'Weight': ' 2.01'},
'9': {'Change': '32,045',
'Name': 'NextEra Energy Inc',
'Owned': '205,412',
'Weight': ' 1.98'}}
它是字典中的字典,我想提取“名称”和“重量”。我正在努力通过第一层(有数字的层),所以这段代码不起作用:
mylist = []
stocks = holdings[0]
for s in stocks:
m = (s['Name'], s['Weight'])
mylist.append(m)
回答
您想迭代stocks.values()以获取值而不是键:
>>> [(s['Name'], s['Weight']) for s in stocks.values()]
[('Prologis Inc', ' 2.14'), ('The Home Depot Inc', ' 2.02'), ('Facebook Inc A', ' 2.01'), ('NextEra Energy Inc', ' 1.98')]