如何访问此有序字典中的值..我想访问cost_price中的值0.92。
OrderedDict([('0', OrderedDict([('cost_price', '0.92'), ('quantity', '0'), ('sell_price', '1.69'), ('text', '6oz')]))])
答案 0 :(得分:1)
我会将next
与生成器表达式一起使用,如果您事先知道只有一个带有cost_price的条目。
如上所述,这与普通字典没有什么不同。
from collections import OrderedDict
d = OrderedDict([('0', OrderedDict([('cost_price', '0.92'), ('quantity', '0'), ('sell_price', '1.69'), ('text', '6oz')]))])
res = next((d[i] for i in d if d[i]['cost_price'] == '0.92'), None)
结果:
OrderedDict([('cost_price', '0.92'),
('quantity', '0'),
('sell_price', '1.69'),
('text', '6oz')])
按键获取所有cost_price值:
res = {k: d[k]['cost_price'] for k in d}
# {'0': '0.92'}