Die Python time Bibliothek [mit Codebeispielen]

    Avatarbild von Perica Glavas
    Perica Glavas

    veröffentlicht am: 31.08.2020
    zuletzt aktualisiert am: 02.02.2023

    Die Python time Bibliothek im Überblick

    Mit Zeitvariablen zu arbeiten ist in der modernen Entwicklung von Software immer wichtiger geworden. Dafür gibt es mehrere Gründe, wie etwa das Koordinieren von Events oder Markieren von Ereignissen mit Zeitstempeln.
    Die Verwendung von Zeitfunktion unterscheidet sich zwischen den Programmiersprachen deutlich. Python stellt dafür eine extra Bibliothek bereit. Die Bibliothek wird Python time genannt. In diesem Artikel werden wir besprechen, wie man die Bibliothek und die darin enthaltenen Funktionen nutzt.

    Die Epoche – Der Startpunkt der Python time Messung

    Bevor wir jedoch mit der eigentlichen Bibliothek starten, sollten wir zunächst die Bedeutung der „Epoche“ verstehen.

    Ganz einfach gesagt beschreibt die Epoche, von welchem Zeitpunkt die Zeit des Computers gemessen wird. Für POSIX und UNIX, liegt der Zeitpunkt am 1. Januar 1970. Für Windows NT wiederrum liegt die Startzeit am 1. Januar 1601.

    Die Epoche des Systems kann man mittels der gmtime()-Funktion aus der time-Bibliothek ermitteln.

    import time
    time.gmtime(0)
    Die Epoche auf einem Python POSIX / UNIX-System.
    Wie zu sehen ist, läuft das System unter UNIX / POSIX.

    Die Funktion gibt eine struct_time()-Funktion zurück. Wenn wir uns den Inhalt genau anschauen, könne wir auch unser bereits angesprochenes Datum wiederfinden.

    Importieren der Python time Bibliothek oder einzelner Funktionen

    Es gibt zwei verschiedene Wege, um eine Bibliothek in Python zu importieren.

    Bei der Ersten können wir ganz einfach den import-Befehl verwenden.

    import time

    Die Funktionen aus der Bibliothek können wir dann wie folgt nutzen.

    import time
    time.gmtime()

    Im zweiten Fall können wir nur die von uns benötigten Funktionen importieren.

    from time import gmtime

    Da wir mit diesem Ausdruck die gmtime()-Funktion direkt importieren, können wir diese auch ohne time nutzen.

    from time import gmtime
    gmtime()

    Wir können also entweder die ganze Bibliothek importieren oder nur spezifische Funktionen. Dabei ist entscheidend, ob wir nur eine Funktion oder eine Bandbreite an Funktionen aus der Bibliothek benötigen.

    time()-Funktion

    Die time()-Funktion gibt uns die verstrichenen Sekunden seit der „Epoche“, also der Startzeit des Systems, aus.

    from time import time
    time_1 = time()

    Lasst uns einen Blick auf die Ausgabe werfen.

    Die Python time-Funktion der Python time Bibliothek.

    So können wir die insgesamt verstrichenen Sekunden erhalten und im Nachhinein mit ihnen arbeiten.

    ctime()-Funktion

    Mittels der ctime()-Funktion können wir die Sekunden aus der time()-Funktion in einen für uns lesbaren String umwandeln.

    from time import time, ctime
    time_1 = time()
    time_2 = ctime(time_1)

    Zunächst nutzen wir die time()-Funktion um die verstrichenen Sekunden zu erhalten. Dann übergeben wir diese an die ctime()-Funktion.

    Mit ctime() können wir die Sekunden aus der time Funktion in einen lesbaren String umwandeln.

    Der String ist dann wie folgt aufgebaut:

    • Tag: Tue (Tuesday)
    • Monat: Jun (June)
    • Tag: 30
    • Stunden:Minuten:Sekunden : 14:17:11 (24-Stündig)
    • Jahr: 2020

    Den String nennt man im allgemeinen dann Zeitstempel.

    sleep()-Funktion

    Die sleep()-Funktion ist wahrscheinlich eine der wichtigsten Funktionen. Mit ihr können wir das Programm zur Laufzeit mit einer durch uns vorgegebenen Zeit pausieren.

    from time import sleep
    print("Vor der sleep-Funktion")
    sleep(4)
    print("Nach 4 Sekunden")

    Zuerst wird die erste print()-Funktion aufgerufen. Danach wird mittels der sleep()-Funktion das Programm für vier Sekunden gestoppt. Im Anschluss wird dann auch die zweite print()-Funktion ausgeführt.

    gmtime()- und localtime()-Funktion

    Am Anfang haben wir die gmtime()-Funktion bereits verwendet um unsere Epoche herauszufinden.

    Schauen wir uns dafür noch einmal den Quellcode an.

    import time
    time.gmtime(0)

    Wir haben in dem Fall eine 0 als Argument übergeben.

    Das Argument gibt dabei vor, welche konkrete Anzahl von Sekunden im struct_time() angezeigt werden soll.

    Die gmtime()-Funktion.

    Wie wir sehen, wandelt die Funktion die Anzahl an Sekunden in ein Struct mit den Angaben eines Zeitstempel um. In diesem Fall ist bei 0 Sekunden unsere Epoche.

    Wir können die Funktion allerdings auch mit der heutigen Zeit bzw. Menge an Sekunden nutzen.

    from time import time, gmtime
    time_1 = time()
    time_2 = gmtime(time_1)

    Die time()-Funktion gibt uns wieder die Anzahl der verstrichenen Sekunden seit der Epoche aus. Diese werden als Argument an die gmtime()-Funktion übergeben.

    Die gmtime()-Funktion in Kombination mit der time()-Funktion.
    from time import time, localtime
    time_1 = time()
    time_2 = localtime(time_1)

    Die Herangehensweise ist gleich zur gmtime()-Funktion.

    Die Nutzung der integrierten localtime-Methode.

    Jetzt haben wir ein Struct, in dem die Zeit zu der unseres Computers passt.

    asctime()-Funktion

    Die asctime()-Funktion ist dazu da, die Zeit, ähnlich der ctime()-Funktion, als String auszugeben. Dabei werden jedoch nicht die verstrichenen Sekunden, sondern ein Struct mit den Zeitstempelangaben übergeben. Alternativ kann auch ein Tuple mit den Angaben übergeben werden.

    Der üblichste Weg ist dabei die Variante mit dem Tuple.

    tup = (2020, 6, 30, 16, 47, 5, 1, 182, 0)

    In dem Tuple stehen die 2020 für das Jahr, die 6 für den Monat, die 30 für den Tag, die 16 für die Stunden, die 47 für die Minuten, die 5 für die Sekunden, die 1 für den Wochentag und die 182 für den entsprechenden Tag im Jahr. Außerdem wird, im Beispiel die 0, eine Markierung für „Tageslicht“ übergeben.

    from time import asctime
    tup = (2020, 6, 30, 16, 47, 5, 1, 182, 0)
    time_1 = asctime(tup)

    Wichtig ist, dass die Reihenfolge der Werte im Tuple richtig ist.

    Zusammenfassung – Das Python time Modul

    Die Funktion rund um die Zeit ist ein wichtiger Bestandteil der modernen Programmierung. Deshalb bietet Python für diesen Bereich eine extra Bibliothek.

    Die time-Bibliothek bietet zahlreiche Funktionen rund um Zeit- und Datumsangaben, die in diesem Artikel besprochen werden.

    😩 Gelangweilt von den Udemy & YouTube-Tutorials?!

    Lerne spielerisch Python und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.

    TP Star TP Star TP Star TP Star TP Star

    "Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."

    - Lennart Sparbier

    100% kostenlos registrieren · keine Kreditkarte notwendig

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig