如何根据缺失日期将缺失日期的日期时间列表拆分为列表列表?使用Python根据缺失日期拆分日期时间列表
下面的例子:
date_list = [
datetime.datetime(2012,1,1,0,0,0),
datetime.datetime(2012,1,2,0,0,0),
datetime.datetime(2012,1,4,0,0,0),
datetime.datetime(2012,1,7,0,0,0),
datetime.datetime(2012,1,8,0,0,0),
]
结果我找这里是
[[datetime.datetime(2012,1,1,0,0,0), datetime.datetime(2012,1,2,0,0,0)]
[datetime.datetime(2012,1,4,0,0,0)],
[datetime.datetime(2012,1,7,0,0,0), datetime.datetime(2012,1,8,0,0,0)]]
我试着用groupby
,但我想不出用什么为重点。
[list(g) for k, g in itertools.groupby(date_list, key=lambda d: d.day)]
您可能会发现第二个例子([旧版本])[itertools文档](https://docs.python.org/2.6/library/itertools.html#examples)有用。另一方面,如果你不关心超级花式,[写你自己的发电机](http://stackoverflow.com/questions/21142231/group-consecutive-integers-and-tolerate-gaps-of-1/ 21142465#21142465)非常简单。 – roippi 2014-12-05 00:18:59