Python -Datetime
Python-Daten
Ein Datum in Python ist kein eigener Datentyp, aber wir können ein Modul namens importieren datetime
, um mit Datumsangaben als Datumsobjekte zu arbeiten.
Beispiel
Importieren Sie das datetime-Modul und zeigen Sie das aktuelle Datum an:
import datetime
x = datetime.datetime.now()
print(x)
Datumsausgabe
Wenn wir den Code aus dem obigen Beispiel ausführen, lautet das Ergebnis:
2022-01-29 15:41:51.884692
Das Datum enthält Jahr, Monat, Tag, Stunde, Minute, Sekunde und Mikrosekunde.
Das datetime
Modul hat viele Methoden, um Informationen über das Datumsobjekt zurückzugeben.
Hier sind ein paar Beispiele, Sie werden später in diesem Kapitel mehr darüber erfahren:
Beispiel
Gibt das Jahr und den Namen des Wochentags zurück:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
Erstellen von Datumsobjekten
Um ein Datum zu erstellen, können wir die datetime()
Klasse (Konstruktor) des
datetime
Moduls verwenden.
Die datetime()
Klasse benötigt drei Parameter, um ein Datum zu erstellen: Jahr, Monat, Tag.
Beispiel
Erstellen Sie ein Datumsobjekt:
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
Die datetime()
Klasse akzeptiert auch Parameter für Zeit und Zeitzone (Stunde, Minute, Sekunde, Mikrosekunde, Zeitzone), aber sie sind optional und haben einen Standardwert von 0
, ( None
für Zeitzone).
Die strftime() Methode
Das datetime
Objekt verfügt über eine Methode zum Formatieren von Datumsobjekten in lesbare Zeichenfolgen.
Die Methode heißt strftime()
und nimmt einen Parameter,
format
, um das Format der zurückgegebenen Zeichenfolge anzugeben:
Beispiel
Zeigt den Namen des Monats an:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
Eine Referenz aller Rechtsformatcodes:
Directive | Description | Example | Try it |
---|---|---|---|
%a | Weekday, short version | Wed | |
%A | Weekday, full version | Wednesday | |
%w | Weekday as a number 0-6, 0 is Sunday | 3 | |
%d | Day of month 01-31 | 31 | |
%b | Month name, short version | Dec | |
%B | Month name, full version | December | |
%m | Month as a number 01-12 | 12 | |
%y | Year, short version, without century | 18 | |
%Y | Year, full version | 2018 | |
%H | Hour 00-23 | 17 | |
%I | Hour 00-12 | 05 | |
%p | AM/PM | PM | |
%M | Minute 00-59 | 41 | |
%S | Second 00-59 | 08 | |
%f | Microsecond 000000-999999 | 548513 | |
%z | UTC offset | +0100 | |
%Z | Timezone | CST | |
%j | Day number of year 001-366 | 365 | |
%U | Week number of year, Sunday as the first day of week, 00-53 | 52 | |
%W | Week number of year, Monday as the first day of week, 00-53 | 52 | |
%c | Local version of date and time | Mon Dec 31 17:41:00 2018 | |
%C | Century | 20 | |
%x | Local version of date | 12/31/18 | |
%X | Local version of time | 17:41:00 | |
%% | A % character | % | |
%G | ISO 8601 year | 2018 | |
%u | ISO 8601 weekday (1-7) | 1 | |
%V | ISO 8601 weeknumber (01-53) | 01 |