Geben Sie den Datumsbereich mit dem Vergleichsoperator in Python datetime an

Ich habe kürzlich entdeckt, dass Pythons datetime-Objekt den ** Vergleichsoperator ** verwenden kann.

from datetime import datetime

targets = [ # 6/1 bis 6/Bis zu 30 Daten
  datetime.datetime(2017, 6, 1, 0, 0),
  datetime.datetime(2017, 6, 2, 0, 0),
  datetime.datetime(2017, 6, 3, 0, 0),
  datetime.datetime(2017, 6, 4, 0, 0),
  datetime.datetime(2017, 6, 5, 0, 0),
  #(Weggelassen)
  datetime.datetime(2017, 6, 25, 0, 0),
  datetime.datetime(2017, 6, 26, 0, 0),
  datetime.datetime(2017, 6, 27, 0, 0),
  datetime.datetime(2017, 6, 28, 0, 0),
  datetime.datetime(2017, 6, 29, 0, 0),
  datetime.datetime(2017, 6, 30, 0, 0)
]

Wenn beispielsweise die oben genannten Monatsdaten als Array übergeben werden,

from_dt = datetime(2017, 6, 10)
to_dt = datetime(2017, 6, 20)

Erstellen Sie ein datetime-Objekt mit ** Startdatum ** und ** Enddatum ** für die Daten, die Sie erhalten möchten. Verwenden Sie dann den Vergleichsoperator in der Form "Startdatum <= Datum / Uhrzeit-Objekt", um <= Enddatum "zu bestimmen.

for target in targets:
  if from_dt <= target <= to_dt: # 6/Weniger als 20 6/Größer als 10
    print target

#Ergebnis:
# 2017-06-10 00:00:00
# 2017-06-11 00:00:00
# 2017-06-12 00:00:00
# 2017-06-13 00:00:00
# 2017-06-14 00:00:00
# 2017-06-15 00:00:00
# 2017-06-16 00:00:00
# 2017-06-17 00:00:00
# 2017-06-18 00:00:00
# 2017-06-19 00:00:00
# 2017-06-20 00:00:00

Jetzt können Sie die Daten vom Startdatum bis zum Enddatum abrufen. Es ist relativ einfach

Recommended Posts

Geben Sie den Datumsbereich mit dem Vergleichsoperator in Python datetime an
Implementieren Sie einen Datumssetzer in Tkinter
Erstellt eine neue Corona-App in Kyoto mit Pythons Webframework Dash
Konvertierung der Zeichenfolge <-> Datum (Datum, Datum / Uhrzeit) in Python
Spiralbuch in Python! Python mit einem Spiralbuch! (Kapitel 14 ~)
Zeichne mit PyCall ein Herz in Ruby
Erstellen Sie eine GUI-App mit Tkinter of Python
Trump-Klasse in Python (mit Vergleich)
Geben Sie das ModelChoiceField-Abfrageset in Django dynamisch an
Ist Pythons Operator langsam? (Von ABC167D)
Empfangen Sie den Datumstyp (Datum / Uhrzeit) mit ArgumentParser [Python]
Verwenden Sie Python 3 Subprocess.run () im CGI-Skript