如何从Python字典中获取特定键的最大值
我有一个下面这样的Python字典:
a={
u'data': [
[u'2013-03-19', u'1363762799', u'4004658'],
[u'2013-03-20', u'1363849199', u'4756668']
],
u'columns': [
u'dt_pst',
u'timestamp',
u'count'
]
}
我该怎么才能找到键为的最大值呢?我想要这个数字:1363849199。
谢谢!
1 个回答
1
首先把它转换成可以使用的格式:
>>> d = {row[0]: row[1:] for row in zip(a['columns'], *a['data'])}
>>> d
{u'count': (u'4004658', u'4756668'),
u'dt_pst': (u'2013-03-19', u'2013-03-20'),
u'timestamp': (u'1363762799', u'1363849199')}
如果你用的是2.6版本,字典推导式是不能用的。你需要使用 dict()
这个构造函数:
d = dict((row[0], row[1:]) for row in zip(a['columns'], *a['data']))
现在,你可以直接使用 max
了:
>>> max(d['timestamp'], key=int)
u'1363849199'
>>> max(map(int, d['timestamp']))
1363849199