Datumswahl in Python generieren

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In Python bietet das Modul datetime Klassen zum Arbeiten mit Daten und Zeiten. Eine häufige Aufgabe ist es, eine Liste von Daten zwischen zwei angegebenen Daten zu erstellen. In dieser Herausforderung werden Sie eine Funktion erstellen, die zwei Daten als Eingabe nimmt und eine Liste aller Daten zwischen ihnen zurückgibt.

Datumsbereich

Schreiben Sie eine Python-Funktion namens daterange(start, end), die zwei datetime.date-Objekte als Argumente nimmt und eine Liste aller Daten zwischen ihnen zurückgibt. Die Liste sollte das Startdatum enthalten, aber nicht das Enddatum.

Um dieses Problem zu lösen, können Sie die folgenden Schritte ausführen:

  1. Verwenden Sie datetime.timedelta.days, um die Anzahl der Tage zwischen start und end zu erhalten.
  2. Verwenden Sie int(), um das Ergebnis in einen Integer zu konvertieren, und range(), um über jeden Tag zu iterieren.
  3. Verwenden Sie eine Listenkomprehension und datetime.timedelta, um eine Liste von datetime.date-Objekten zu erstellen.
from datetime import timedelta, date

def daterange(start, end):
  return [start + timedelta(n) for n in range(int((end - start).days))]
from datetime import date

daterange(date(2020, 10, 1), date(2020, 10, 5))
## [date(2020, 10, 1), date(2020, 10, 2), date(2020, 10, 3), date(2020, 10, 4)]

Zusammenfassung

In dieser Herausforderung haben Sie gelernt, wie Sie mithilfe des datetime-Moduls in Python eine Liste von Daten zwischen zwei angegebenen Daten erstellen. Sie können diese Funktion verwenden, um eine Vielzahl von Problemen zu lösen, wie z. B. die Berechnung der Anzahl der Tage zwischen zwei Daten oder das Generieren einer Liste von Daten für einen bestimmten Monat oder Jahr.