我是Python的新手,对字典感到非常兴奋。他们让我给所有名称起了名字,这样我就不必记住字段的位置,并且看起来可以编写更可靠的代码。但是,现在我要从该命令中提取列表(1,2,3,4)和(5,6,7,8)。有任何想法吗??而且...该代码是随机建模程序的核心,因此我需要快一点。干杯!
evnt = {'m1':{'rate':1, 'val':5 },
'm2':{'rate':2, 'val':6 },
'd1':{'rate':3, 'val':7 },
'd2':{'rate':4, 'val':8 }}
一种明显的方法是列表理解,如果它对您来说不够快,则可能需要考虑使用其他数据结构。
>>> [v['rate'] for v in evnt.itervalues()]
[4, 3, 1, 2]
(注意:仅.values()
适用于python3)
不,您无法按顺序获取它们(不进行排序),因为您的字典并不是一开始就排序的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句