Frage

Von der IPython Konsole:

In [16]: b
Out[16]: datetime.datetime(2008, 3, 1, 0, 0)

In [17]: e
Out[17]: datetime.datetime(2010, 5, 2, 0, 0)

In [18]: rrule(MONTHLY).between(b, e, inc=True)
Out[18]:
[datetime.datetime(2009, 3, 6, 14, 42, 1),
 datetime.datetime(2009, 4, 6, 14, 42, 1),
 datetime.datetime(2009, 5, 6, 14, 42, 1),
 datetime.datetime(2009, 6, 6, 14, 42, 1),
 datetime.datetime(2009, 7, 6, 14, 42, 1),
 datetime.datetime(2009, 8, 6, 14, 42, 1),
 datetime.datetime(2009, 9, 6, 14, 42, 1),
 datetime.datetime(2009, 10, 6, 14, 42, 1),
 datetime.datetime(2009, 11, 6, 14, 42, 1),
 datetime.datetime(2009, 12, 6, 14, 42, 1),
 datetime.datetime(2010, 1, 6, 14, 42, 1),
 datetime.datetime(2010, 2, 6, 14, 42, 1),
 datetime.datetime(2010, 3, 6, 14, 42, 1),
 datetime.datetime(2010, 4, 6, 14, 42, 1)]

Wie kann ich between() Rückkehr Daten ausgehend vom Anfang (b) Datum?

machen
War es hilfreich?

Lösung

Sie müssen b in RRULE passieren, wie folgt aus:

rrule(MONTHLY, dtstart = b).between(b, e, inc=True)

Aus dieser docs ( http://labix.org/python-dateutil ), es sieht aus wie Aufruf RRULE dtstart ohne Angabe wird verwenden datetime.datetime.now () als Startpunkt für die Sequenz, die Sie später die Anwendung between zu sind. Deshalb Ihre Werte bei 2009-03-06 beginnen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top