Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Pythons strftime() meistern: Daten und Zeiten in lesbare Strings konvertieren

Python strftime()

In diesem Artikel lernen Sie, wie Sie date-, time- und datetime-Objekte mithilfe von Beispielen in ihre äquivalenten String-Repräsentationen konvertieren.

Video: Daten und Zeiten in Python

Die Methode strftime() gibt einen String zurück, der Datum und Zeit mithilfe eines date-, time- oder datetime-Objekts darstellt.


Beispiel 1: datetime in String mit strftime() konvertieren

Das folgende Programm konvertiert ein datetime-Objekt mit dem aktuellen Datum und der aktuellen Uhrzeit in verschiedene String-Formate.

from datetime import datetime

now = datetime.now()  # aktuelles Datum und Uhrzeit
year = now.strftime("%Y")
print("Jahr:", year)
month = now.strftime("%m")
print("Monat:", month)
day = now.strftime("%d")
print("Tag:", day)
time = now.strftime("%H:%M:%S")
print("Uhrzeit:", time)
date_time = now.strftime("%m/%d/%Y, %H:%M:%S")
print("Datum und Uhrzeit:", date_time)

Bei der Ausgabe erhalten Sie eine Ausgabe ähnlich dieser:

Jahr: 2018
Monat: 12
Tag: 24
Uhrzeit: 04:59:31
Datum und Uhrzeit: 12/24/2018, 04:59:31

Hier sind year, day, time und date_time Strings, während now ein datetime-Objekt ist.


Wie funktioniert strftime()?

Im obigen Programm sind %Y, %m, %d usw. Formatcodes. Die Methode strftime() nimmt einen oder mehrere Formatcodes als Argument entgegen und gibt einen formatierten String basierend darauf zurück.

  1. Wir importieren die datetime-Klasse aus dem datetime-Modul. Dies ist notwendig, da Objekte der datetime-Klasse auf die strftime()-Methode zugreifen können.
  2. Das datetime-Objekt mit dem aktuellen Datum und der aktuellen Uhrzeit wird in der Variablen now gespeichert.
  3. Die strftime()-Methode kann verwendet werden, um formatierte Strings zu erstellen.
  4. Der an strftime() übergebene String kann mehr als einen Formatcode enthalten.

Beispiel 2: String aus einem Zeitstempel erstellen

from datetime import datetime

timestamp = 1528797322
date_time = datetime.fromtimestamp(timestamp)
print("Datum-Uhrzeit-Objekt:", date_time)
d = date_time.strftime("%m/%d/%Y, %H:%M:%S")
print("Ausgabe 2:", d)
d = date_time.strftime("%d %b, %Y")
print("Ausgabe 3:", d)
d = date_time.strftime("%d %B, %Y")
print("Ausgabe 4:", d)
d = date_time.strftime("%I%p")
print("Ausgabe 5:", d)

Bei der Ausgabe erhalten Sie:

Datum-Uhrzeit-Objekt: 2018-06-12 09:55:22
Ausgabe 2: 06/12/2018, 09:55:22
Ausgabe 3: 12 Jun, 2018
Ausgabe 4: 12 June, 2018
Ausgabe 5: 09AM

Liste der Formatcodes

Die folgende Tabelle zeigt alle Codes, die Sie an die strftime()-Methode übergeben können.

DirektiveBedeutungBeispiel
%aAbgekürzter Wochentagsname.So, Mo, ...
%AVollständiger Wochentagsname.Sonntag, Montag, ...
%wWochentag als Dezimalzahl.0, 1, ..., 6
%dTag des Monats als null-gefüllte Dezimalzahl.01, 02, ..., 31
%-dTag des Monats als Dezimalzahl.1, 2, ..., 30
%bAbgekürzter Monatsname.Jan, Feb, ..., Dez
%BVollständiger Monatsname.Januar, Februar, ...
%mMonat als null-gefüllte Dezimalzahl.01, 02, ..., 12
%-mMonat als Dezimalzahl.1, 2, ..., 12
%yJahr ohne Jahrhundert als null-gefüllte Dezimalzahl.00, 01, ..., 99
%-yJahr ohne Jahrhundert als Dezimalzahl.0, 1, ..., 99
%YJahr mit Jahrhundert als Dezimalzahl.2013, 2019 usw.
%HStunde (24-Stunden-Uhr) als null-gefüllte Dezimalzahl.00, 01, ..., 23
%-HStunde (24-Stunden-Uhr) als Dezimalzahl.0, 1, ..., 23
%IStunde (12-Stunden-Uhr) als null-gefüllte Dezimalzahl.01, 02, ..., 12
%-IStunde (12-Stunden-Uhr) als Dezimalzahl.1, 2, ... 12
%pLokale AM- oder PM-Bezeichnung.AM, PM
%MMinute als null-gefüllte Dezimalzahl.00, 01, ..., 59
%-MMinute als Dezimalzahl.0, 1, ..., 59
%SSekunde als null-gefüllte Dezimalzahl.00, 01, ..., 59
%-SSekunde als Dezimalzahl.0, 1, ..., 59
%fMikrosekunde als Dezimalzahl, links null-gefüllt.000000 - 999999
%zUTC-Offset in der Form +HHMM oder -HHMM.
%ZZeitzonenname.
%jTag des Jahres als null-gefüllte Dezimalzahl.001, 002, ..., 366
%-jTag des Jahres als Dezimalzahl.1, 2, ..., 366
%UWochennummer des Jahres (Sonntag als erster Wochentag).00, 01, ..., 53
%WWochennummer des Jahres (Montag als erster Wochentag).00, 01, ..., 53
%cLokale Datums- und Uhrzeitdarstellung.Mon Sep 30 07:06:05 2013
%xLokale Datumsdarstellung.09/30/13
%XLokale Uhrzeitdarstellung.07:06:05
%%Ein wörtliches '%'-Zeichen.%

Beispiel 3: Lokale Datums- und Uhrzeitdarstellung

from datetime import datetime

timestamp = 1528797322
date_time = datetime.fromtimestamp(timestamp)
d = date_time.strftime("%c")
print("Ausgabe 1:", d)
d = date_time.strftime("%x")
print("Ausgabe 2:", d)
d = date_time.strftime("%X")
print("Ausgabe 3:", d)

Bei der Ausgabe erhalten Sie:

Ausgabe 1: Tue Jun 12 09:55:22 2018
Ausgabe 2: 06/12/18
Ausgabe 3: 09:55:22

Die Formatcodes %c, %x und %X werden für die lokale Datums- und Uhrzeitdarstellung verwendet.


Wir empfehlen Ihnen auch, strptime() zu prüfen. Die strptime()-Methode erstellt ein datetime-Objekt aus einem String.

Python

  1. Python-Schlüsselwörter & Bezeichner: Reservierte Wörter & Benennungskonventionen meistern
  2. Python-Datentypen meistern: Praxisleitfaden
  3. Python-Operatoren meistern: Umfassender Leitfaden
  4. Python-Funktionsargumente meistern: Positional, Keyword & Default-Parameter
  5. Python-Dictionaries meistern: Erstellung, Manipulation und fortgeschrittene Techniken
  6. Python Iteratoren meistern: Funktionsweise und Erstellung eigener Iteratoren
  7. Python Closures erklärt: Wie verschachtelte Funktionen Variablen erfassen
  8. Python Reguläre Ausdrücke (re Modul) – Ein praktischer Leitfaden
  9. Python datetime meistern: Praktischer Leitfaden zu Datumsangaben, Zeiten und Zeitzonen
  10. Pythons time-Modul meistern: Funktionen, Structs und praktische Beispiele