簡體   English   中英

枚舉DateRange

[英]Enumerate a DateRange

我有兩個日期,我正在嘗試建立一個情節的x軸標簽。

因此,我需要一種方法來獲取2個日期時間對象,即2009-10-12 00:00:002009-10-20 00:00:00並生成如下列表:

["2009-10-12", "2009-10-13", "2009-10-14", ..., "2009-10-19", "2009-10-20"]

我應該使用哪些庫來提供幫助? 我有一種感覺, datetime模塊和timedelta功能將有所幫助。

我可以包含代碼,如果它有意義,但我有一種感覺,python庫中內置了一些內容,可以讓它變得非常容易。 我似乎只是想念它。

import datetime

first=datetime.date(2009,10,12)
last=datetime.date(2009,10,20)
adate=first
dates=[]
while adate<=last:
    dates.append(adate)
    adate+=datetime.timedelta(1)
print(dates)

或者,對於列表理解愛好者:

len=(last-first).days
dates=[first+datetime.timedelta(n) for n in range(len+1)]
from datetime import date, timedelta

a, b = date(1010, 10, 12), date(1010, 10, 20)
times = [a + timedelta(x) for x in xrange((b-a).days)]

# If you want to format them:
times = [x.strftime('%Y-%m-%d') for x in times]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM