如何根據缺失日期將缺失日期的日期時間列表拆分爲列表列表?使用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