我下面有一份字典的清单
Data = [{"Date": "Fri, 13 Oct 2017 00:00:00 GMT",
"In_Time": "Fri, 13 Oct 2017 13:10:00 GMT",
"Owner_Name": "Ashish Bainade"},
{"Date": "Fri, 13 Oct 2017 00:00:00 GMT",
"In_Time": "Fri, 13 Oct 2017 13:03:00 GMT",
"Owner_Name": "Akshara Bainade"},
{"Date": "Fri, 12 Oct 2017 00:00:00 GMT",
"In_Time": "Fri, 12 Oct 2017 13:03:00 GMT",
"Owner_Name": "Sam"}]
我想转换成自定义的词典列表,并按日期分组。 示例输出为:
^{pr2}$我尝试使用itertools.groupby
函数,但是没有得到预期的结果。在
我使用的代码:
from itertools import groupby
group_by_field = 'Date'
f = lambda x: x[group_by_field]
response = [item for item in groupby(sorted(Data, key=f), f)]
print response
# [('Fri, 12 Oct 2017 00:00:00 GMT', <itertools._grouper object at 0x000000000288E2B0>), ('Fri, 13 Oct 2017 00:00:00 GMT', <itertools._grouper object at 0x000000000288E1D0>)]
你的代码离目标并不远,但是你不能仅仅在列表理解中收集结果,你必须使用混合的列表和字典理解来创建dict列表的内部dict。试试这个:
结果是
^{pr2}$res
相关问题 更多 >
编程相关推荐