Python Datetime: Ein umfassender Leitfaden mit Beispielen

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Wenn Sie mit Datenprojekten in Python arbeiten, verwenden Sie am wahrscheinlichsten Datum/Uhrzeit-Funktionen. Fast jeder Datensatz, mit dem Sie arbeiten, verfügt über eine Datums-/Uhrzeitspalte, die Sie entsprechend Ihren Bedürfnissen und Projektanforderungen bearbeiten möchten.

Glücklicherweise verfügt Python über ein eigenes integriertes Modul namens datetime , mit dem Sie Datetime-Instanzen wie Datumsangaben, Uhrzeiten und Kombinationen aus beiden darstellen, bearbeiten und Operationen mit ihnen ausführen können. Wenn Sie das Python-Datetime-Modul beherrschen, können Sie in Ihren Projekten zuverlässigere Zeitreihenanalysen durchführen.

Das Python-Datetime-Modul ist ein Tool zum Umgang mit Datumsangaben, Uhrzeiten und Zeitintervallen. Es ermöglicht Ihnen, auf unkomplizierte Weise verschiedene Vorgänge an Datum und Uhrzeit durchzuführen.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Programmierzusammenfassung – Quellcode und Binärcode auf dem Display des Softwareentwicklers. Schwarzes Thema mit farbiger Syntax.

Durch die Verwendung des datetime-Moduls in Python können Sie problemlos mit Datums- und Uhrzeitwerten arbeiten, Zeitzonen verwalten, Berechnungen durchführen und sogar Formatierung und Analyse für verschiedene Darstellungen durchführen. Diese Funktionalität macht das Datetime-Modul zu einem unverzichtbaren Werkzeug in vielen Anwendungen, von der Datenverarbeitung bis zur Ereignisplanung und darüber hinaus.

Bevor Sie beginnen, das Datetime-Modul von Python in Ihren Projekten zu verwenden, ist es wichtig, die zugrunde liegenden Klassen zu verstehen. Im folgenden Abschnitt betrachten wir die fünf Hauptklassen des DateTime-Moduls von Python. Lasst uns loslegen!

Inhaltsverzeichnis

Was sind die 5 Hauptklassen des Python Datetime-Moduls?

Das Python-Datetime-Modul ist Teil der Standardbibliothek, die Klassen zum Bearbeiten und Arbeiten mit Datumsangaben, Uhrzeiten, Zeitzonen und Dauern bereitstellt.

Das Modul besteht aus fünf Hauptveranstaltungen:

  1. Terminzeit

  2. Datum,

  3. Zeit,

  4. Zeitdelta

  5. Zeitzone.

    Wir werden uns jede Klasse ansehen, gefolgt von Beispielanwendungsfällen, um Ihnen zu helfen, das Konzept besser zu verstehen.

So verwenden Sie die Datetime-Klasse

Die Python-Datetime-Klasse ist die am häufigsten verwendete Klasse im Modul. Es stellt einen einzelnen Zeitpunkt mit Attributen wie Jahr, Monat, Tag, Stunde, Minute, Sekunde und Mikrosekunde dar.

Zu den gängigen Vorgängen mit der Python-Datetime-Klasse gehören:

  • datetime.datetime.now()

Mit dieser Funktion können Sie das aktuelle Datum und die aktuelle Uhrzeit abrufen. Das Folgende ist ein Beispiel für das Abrufen des aktuellen Datums und der aktuellen Uhrzeit:

import datetime

# Get the current date and time
now = datetime.datetime.now()

print("Current date and time: ", now)

Dadurch werden das aktuelle Datum und die aktuelle Uhrzeit zum Zeitpunkt der Ausführung im Format JJJJ-MM-TT HH:MM:SS.ssssss ausgegeben.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • datetime.datetime

Mit dieser Funktion können Sie ein benutzerdefiniertes Datums- und Uhrzeitobjekt erstellen. Das Folgende ist ein Beispiel für die Verwendung von datetime.datetime in Ihrem Code:

from datetime import date

# Create a custom date and time object
custom_date = datetime.datetime(2023, 5, 22, 17, 40)

print("Custom date and time: ", custom_date)

Zusätzlich zu den oben genannten Funktionen stellt die Datetime-Klasse auch Methoden zum Arbeiten mit Datum und Uhrzeit bereit, wie zum Beispiel:

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • strftime() :

Mit der Methode können Sie die Datums- und Uhrzeitobjekte als Zeichenfolge formatieren. Das Folgende ist ein Beispiel für die Methode strftime():

import datetime

# Create a custom date and time object
custom_date = datetime.datetime(2023, 5, 22, 17, 40)

# Format the datetime object as a string
formatted_date = custom_date.strftime("%B %d, %Y, %H:%M")

print("Formatted date and time: ", formatted_date)

Dieser Code konvertiert das Datetime-Objekt in eine Zeichenfolge:

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • strptime() :

Mit dieser Funktion in der datetime-Klasse können Sie eine Zeichenfolge, die Datums- und Uhrzeitobjekte darstellt, in ein einzelnes Datetime-Objekt analysieren. Das Folgende ist ein Beispiel für das Parsen eines Datums, das als Zeichenfolge in einem Datetime-Objekt gespeichert ist:

import datetime

# String representing a date and time
date_string = "May 22, 2023, 17:40"

# Parse the string into a datetime object
parsed_date = datetime.datetime.strptime(date_string, "%B %d, %Y, %H:%M")

print("Parsed date and time: ", parsed_date)

Dadurch wird die Zeichenfolge in ein DateTime-Objekt konvertiert.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

So verwenden Sie die Datumsklasse

Mit der Date-Klasse können Sie ausschließlich mit Datumsobjekten (Jahr, Monat und Tag) umgehen. Mit der Datumsklasse können Sie Datumsobjekte erstellen.

Zu den gängigen Operationen mit der Date-Klasse gehören:

  • datetime.date.today()

Mit dieser Funktion in der Datumsklasse können Sie das aktuelle Datum abrufen. Das Folgende ist ein Beispiel für das Abrufen des aktuellen Datums mit der Datumsklasse:

import datetime

# Get the current date
today = datetime.date.today()

print("Today's date: ", today)

Dieser Python-Code gibt das aktuelle Datum zum Zeitpunkt der Ausführung im Format JJJJ-MM-TT aus.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Zum Zeitpunkt der Erstellung dieses Artikels war das aktuelle Datum der 22.05.2023.

  • datetime.date()

Mit dieser Funktion in der Datumsklasse können Sie Datumsobjekte erstellen. Das Beispiel zeigt das Erstellen eines benutzerdefinierten Datumsobjekts mit der Funktion datetime.date():

import datetime

# Create a custom date object
custom_date = datetime.date(2023, 5, 22)

print("Custom date: ", custom_date)

In der Funktion datetime.date() geben Sie Jahr, Monat und Tag als Argumente an.

Dieses Skript gibt den 22.05.2023 aus, da Sie ein benutzerdefiniertes Datumsobjekt für das Datum 22. Mai 2023 erstellt haben.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Die Date-Klasse bietet auch nützliche Methoden, wie zum Beispiel:

  • Wochentag()

Diese Methode in der Datumsklasse gibt den Wochentag zurück (0 für Montag, 1 für Dienstag usw.). Das folgende Beispiel demonstriert die Methode Weekday():

import datetime

# Create a custom date object
custom_date = datetime.date(2023, 5, 22)

# Get the day of the week
day_of_week = custom_date.weekday()

print("Day of the week: ", day_of_week)

In diesem Beispiel gibt custom_date.weekday() 0 zurück, da der 22. Mai 2023 auf einen Montag fällt.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • strftime()

Mit dieser Methode in der Datumsklasse können Sie das Datumsobjekt als Zeichenfolge formatieren . Das folgende Beispiel demonstriert die Funktion strftime():

import datetime

# Create a custom date object
custom_date = datetime.date(2023, 5, 22)

# Format the date object as a string
formatted_date = custom_date.strftime("%B %d, %Y")

print("Formatted date: ", formatted_date)

Dadurch wird das Datum im Format „Monatstag, Jahr“ ausgegeben.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • strptime()

Mit dieser Methode können Sie eine Zeichenfolge, die ein Datum darstellt, in ein Date-Objekt analysieren. Im Folgenden finden Sie ein Beispiel für die Konvertierung eines String-Datums in ein Date-Objekt:

import datetime

# String representing a date
date_string = "May 22, 2023"

# Parse the string into a date object
parsed_date = datetime.datetime.strptime(date_string, "%B %d, %Y").date()

print("Parsed date: ", parsed_date)

Dadurch wird das aus der Datumszeichenfolge erstellte Datumsobjekt ausgegeben.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

So verwenden Sie die Zeitklasse

The Time class allows you to work with time instances (hour, minute, second, microsecond). With the time class, you can create a custom time object with datetime.time().

The following example demonstrates creating a custom time object:

import datetime

# Create a custom time object
custom_time = datetime.time(17, 40)

print("Custom time: ", custom_time)

In the datetime.time() function, you provide the hour and minute as arguments.

This script will output 17:40:00, as specified in the Python code.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

The Time class provides useful methods, such as:

  • strftime()

This method allows you to format the time object as a string. Below is an example of this function:

import datetime

# Create a custom time object
custom_time = datetime.time(17, 40)

# Format the time object as a string
formatted_time = custom_time.strftime("%H:%M")

print("Formatted time: ", formatted_time)

This will output the local time formatted as “Hour:Minute”.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • strptime()

This function allows you to parse a string representing time into a Time object. The following example demonstrates this function:

from datetime import time

# String representing a time
time_string = "17:40"

# Parse the string into a time object
parsed_time = datetime.datetime.strptime(time_string, "%H:%M").time()

print("Parsed time: ", parsed_time)

This will output the time objects created from the time string.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

How to Use The Timedelta Class

The Timedelta class allows you to represent represents a duration or difference between two dates or times.

With Timedelta class, you can perform the following operations:

  • Calculate the difference between two dates or times

An example of calculating the difference between two dates is given below:

 import datetime

# Create two custom date objects
date1 = datetime.date(2023, 5, 22)
date2 = datetime.date(2023, 6, 1)

# Calculate the difference between the two dates
date_difference = date2 - date1

print("Difference between the dates is: ", date_difference.days, "days")

In this example, date_difference is a timedelta object representing the difference between date2 and date1. The .days property gives the number of days between the two dates.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • Add or subtract a duration to a date or time

An example of adding a duration to a date is given below:

import datetime

# Create a custom date object
custom_date = datetime.date(2023, 5, 22)

# Create a duration of 10 days
duration = datetime.timedelta(days=10)

# Add the duration to the date
new_date = custom_date + duration

print("New date: ", new_date)

In this example, duration is a timedelta object representing a duration of 10 days. We use the + operator to add this duration to custom_date.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

How to Use the Timezone Class

The Timezone class allows you to handle time zones and daylight saving time adjustments.

You can perform the following operation with timezone class:

  • Create a timezone object

To create a timezone object, you can use the datetime.timezone() function. The following example demonstrates creating a timezone object:

import datetime

# Create a timezone object for a timezone 2 hours ahead of UTC
two_hours_ahead = datetime.timezone(datetime.timedelta(hours=2))

print("Timezone object: ", two_hours_ahead)

In this example, two_hours_ahead is a timezone object representing a timezone that is 2 hours ahead of Coordinated Universal Time (UTC).

This script will output a timezone object like .

Python Datetime: Ein umfassender Leitfaden mit Beispielen

  • Object with a specific timezone

To achieve this, you can use the .replace(tzinfo=tz) function. The following example demonstrates this function:

import datetime

# Create a naive datetime object
naive_datetime = datetime.datetime(2023, 5, 22, 17, 40)

# Create a timezone object for a timezone 2 hours ahead of UTC
two_hours_ahead = datetime.timezone(datetime.timedelta(hours=2))

# Convert the naive datetime object to an aware object
aware_datetime = naive_datetime.replace(tzinfo=two_hours_ahead)

print("Aware datetime object: ", aware_datetime)

In this example, naive_datetime is a datetime object that does not have any timezone information. The two_hours_ahead variable is a timezone object representing a timezone that is 2 hours ahead of UTC.

The replace(tzinfo=two_hours_ahead) method is used to create a new datetime object with the same date and time as naive_datetime, but with tzinfo set to two_hours_ahead.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

The Timezone helps you maintain accurate and consistent time values when working with data that spans multiple time zones.

You have gone through some of the most important functions in the datetime module in Python. In the next section we will implement some of the above functions to a case studywhich will give you a practical look into the implementation of these datetime module in your projects.

Implementing the DateTime Module Functions to a Case Study

Let’s consider a case study where we are given a dataset of different events that happened around the world. The dataset has corresponding dates and times in a string format.

Unsere Aufgabe besteht darin, diese Datums- und Uhrzeitangaben in DateTime-Objekte umzuwandeln und bei Bedarf Operationen daran durchzuführen.

Angenommen, wir erhalten den folgenden Datensatz:

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Wenn wir die Datentypen der Variablen überprüfen, sehen wir, dass Datum und Uhrzeit als String gespeichert sind. Daher müssen wir vor der Durchführung einer Analyse die Datums- und Uhrzeitspalten in ein geeignetes Format konvertieren.

Dazu können wir den folgenden Code verwenden:

import datetime

# Convert 'Date' and 'Time' strings into datetime objects
df['DateTime'] = df['Date'] + ' ' + df['Time']
df['DateTime'] = df['DateTime'].apply(lambda x: datetime.datetime.strptime(x, "%b %d, %Y %H:%M"))

print(df)

In diesem Codeblock erstellen wir zunächst eine neue Spalte „DateTime“ in Ihrem DataFrame, indem wir die Spalten „Date“ und „Time“ verketten. Anschließend wenden wir die Funktion datetime.strptime auf jeden Wert in dieser neuen Spalte an, um die Datums- und Uhrzeitzeichenfolgen in Datetime-Objekte umzuwandeln. Zum Schluss drucken wir den DataFrame aus, um das Ergebnis zu sehen.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Als nächstes möchten wir die Differenz zwischen zwei Ereignissen berechnen. Dazu können wir den folgenden Code verwenden:

duration = df.loc[1, 'DateTime'] - df.loc[0, 'DateTime']
print("Duration between Event1 and Event2: ", duration)

Dieses Python-Skript berechnet die Dauer zwischen „Event1“ und „Event2“.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Zum Schluss konvertieren wir die Datetime-Objekte in eine andere Zeitzone. Dies kann mithilfe der Zeitzonenfunktionen im Datum/Uhrzeit-Modul erreicht werden.

# Create a timezone object for UTC
utc_tz = datetime.timezone(datetime.timedelta(0))

# Convert the datetime objects into UTC
df['DateTime_UTC'] = df['DateTime'].apply(lambda x: x.replace(tzinfo=utc_tz))

print(df)

In diesem Code erstellen wir ein Zeitzonenobjekt für UTC. Als Nächstes erstellen wir in unserem DataFrame eine neue Spalte mit dem Namen „DateTime_UTC“, indem wir eine Lambda-Funktion auf unsere Spalte „DateTime“ anwenden. Dadurch werden die Zeitzoneninformationen jedes Datetime-Objekts durch UTC ersetzt.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Anhand der obigen Beispielfallstudie können Sie sehen, wie die verschiedenen Funktionen des DateTime-Moduls zusammenarbeiten, um Datums- und Uhrzeitangaben in ein geeignetes Format umzuwandeln.

Nachdem Sie nun mit einigen Funktionen im datetime-Modul vertraut sind, werfen wir einen Blick auf einige zusätzliche Funktionen, die Sie bei komplexeren Projekten verwenden möchten.

Neben den oben aufgeführten Funktionen gibt es noch viele weitere nützliche Funktionen, die Sie je nach Problemstellung nutzen können. Python-Entwickler halten häufig eine Dokumentationsseite offen, um nach Funktionen zu suchen, die Ihren Anforderungen gerecht werden. Und wir empfehlen Ihnen, dasselbe zu tun!

Zusätzliche Datums- und Uhrzeitfunktionen

In diesem Abschnitt besprechen wir zusätzliche Funktionen im Python- Datetime- Modul. Dazu gehört das Abrufen von Wochentagen, Monats- und Wochentagsnamen sowie die Funktion ctime() .

So rufen Sie Wochentage aus einem Datum ab

Das datetime- Modul verfügt über eine Funktion „weekday()“ , die den Wochentag als Ganzzahl zurückgibt (wobei Montag 0 und Sonntag 6 ist).

Um diese Funktion zu verwenden, können Sie sie für ein Datums- oder Datums-/Uhrzeitobjekt aufrufen.

import datetime

today = datetime.date.today()
weekday_number = today.weekday()

print(weekday_number)

Die Ausgabe des obigen Codes ist im Bild unten dargestellt:

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Das aktuelle Ortsdatum ist der 23.05.2023 und der Wochentag ist Montag.

So rufen Sie Monats- und Wochentagsnamen aus einem Datum ab

Mit datetime können Sie auch den Namen des Monats und den Wochentag abrufen.

Sie können die Funktion strftime() verwenden , die ein Datums- oder Datetime-Objekt als Zeichenfolge formatiert.

Im Folgenden finden Sie ein Beispiel für die Verwendung der Funktion strftime(), um den Namen des Monats und den Wochentag abzurufen:

import datetime

today = datetime.date.today()
weekday_name = today.strftime('%A')
month_name = today.strftime('%B')

print(weekday_name)
print(month_name)

Dieser Code gibt den Namen des Wochentags und des Monats in der Ausgabe aus .

Python Datetime: Ein umfassender Leitfaden mit Beispielen

So verwenden Sie die Ctime-Funktion

Die Funktion ctime() im datetime- Modul gibt eine Zeichenfolgendarstellung eines Datums- oder Datetime-Objekts im Format „Tag Montag TT HH:MM:SS JJJJ“ zurück.

ctime ist eine Methode für ein Datetime- Objekt, keine eigenständige Funktion.

Das Folgende ist ein Beispiel für die Verwendung der ctime-Funktion in Ihrem Code:

import datetime

now = datetime.datetime.now()
formatted_date = now.ctime()

print(formatted_date)

Der obige Code gibt eine Zeichenfolgendarstellung des Datumsobjekts zurück.

Python Datetime: Ein umfassender Leitfaden mit Beispielen

Um mehr über die Arbeit mit Zeitreihendaten zu erfahren, schauen Sie sich das folgende Video an:

Abschließende Gedanken

Als Python-Programmierer ist es wichtig, das Datetime-Modul zu beherrschen. Es handelt sich um ein Toolkit, mit dem Sie Datumsangaben, Uhrzeiten und Zeitintervalle verwalten können. Dies sind die Elemente, denen Sie in realen Daten häufig begegnen werden.

Sie benötigen dieses Modul, um Zeichenfolgen in Datums-/Uhrzeitobjekte zu konvertieren, Zeitzonenkonvertierungen durchzuführen und Operationen an Datums- und Uhrzeitangaben durchzuführen.

Wenn Sie lernen, wie Sie das Datetime-Modul verwenden, sind Sie besser auf die Bewältigung dieser Aufgaben in Ihren eigenen Projekten vorbereitet!


So speichern und laden Sie eine RDS-Datei in R

So speichern und laden Sie eine RDS-Datei in R

Sie erfahren, wie Sie Objekte aus einer .rds-Datei in R speichern und laden. In diesem Blog wird auch behandelt, wie Sie Objekte aus R in LuckyTemplates importieren.

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.

Einführung in den Filterkontext in LuckyTemplates

Einführung in den Filterkontext in LuckyTemplates

In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.

Materialisierungsideen für Datencaches in DAX Studio

Materialisierungsideen für Datencaches in DAX Studio

In diesem Tutorial werden die Ideen der Materialisierung von Datencaches und deren Auswirkungen auf die Leistung von DAXs bei der Bereitstellung von Ergebnissen erläutert.

Geschäftsberichte mit LuckyTemplates

Geschäftsberichte mit LuckyTemplates

Wenn Sie bisher noch Excel verwenden, ist dies der beste Zeitpunkt, LuckyTemplates für Ihre Geschäftsberichtsanforderungen zu verwenden.

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst