如何从python字典中获取特定键的最大值
我有一个python dict,如下所示:如何从python字典中获取特定键的最大值,python,dictionary,max,Python,Dictionary,Max,我有一个python dict,如下所示: 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' ] } 如何获取键u‘timestamp’的最大值?我要这个号码:1363849199 谢谢
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'
]
}
如何获取键u‘timestamp’的最大值?我要这个号码:1363849199
谢谢 首先将其转换为可用格式:
>>> 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
我遇到了以下错误:
File“”,第1行df={row[0]:row[1:]表示zip中的行(a['columns',*a['data'])}^SyntaxError:尝试运行时语法无效:d={row[0]:row[1:]表示zip中的行(a['columns',*a['data'])}
@tonystarkix:该语法对2.6不起作用。有关2.6兼容语法,请参见我的答案。