Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erklärung des Zeitmoduls in Python

Detaillierte Erklärung des Zeitmoduls in Python

王林
王林Original
2023-06-10 11:17:136168Durchsuche

Detaillierte Erklärung des Zeitmoduls in Python

Bei der Python-Programmierung müssen wir häufig Zeit verarbeiten und verwalten. Die Standardbibliothek in Python bietet ein Zeitmodul zur Abwicklung zeitbezogener Vorgänge. In diesem Artikel wird das Zeitmodul ausführlich vorgestellt.

  1. Einführung in das Zeitmodul

Das Zeitmodul ist Teil der Python-Standardbibliothek und stellt einige Funktionen und Klassen zur Zeitverarbeitung bereit. Dieses Modul umfasst hauptsächlich die folgenden Aspekte:

  1. Zeiterfassung: Ermitteln Sie die aktuelle Uhrzeit und die Ausführungszeit des Ruhezustands.
  2. Konvertierung des Zeitformats: Konvertieren Sie die Zeit in eine Zeichenfolge oder eine formatierte Zeichenfolge in eine Zeit.
  3. Zeitberechnung: Berechnen Sie die Differenz zwischen zwei Zeiten.
  4. Zeitoperationen: Addieren, Subtrahieren, Vergleichen, Beurteilen und andere Operationen pünktlich.
  5. Zeiterfassung

Das Zeitmodul verwendet die Funktion time(), um den Zeitstempel der aktuellen Zeit zu erhalten. Das Folgende ist ein einfaches Beispiel:

import time

now = time.time()  
print("当前时间戳:", now)

Ausgabe:

当前时间戳: 1563431484.0177832

Um uns die Anzeige der Zeit zu erleichtern, stellt das Zeitmodul auch eine asctime()-Funktion bereit, um den Zeitstempel in eine Zeichenfolge umzuwandeln, die die Ortszeit darstellt. Das Folgende ist ein Beispiel:

import time

now = time.time()
localtime = time.localtime(now)
asctime = time.asctime(localtime)

print("当前时间:", asctime)

Ausgabe:

当前时间: Mon Jul 18 14:04:44 2019

Darüber hinaus kann die Funktion „sleep()“ das Programm für eine bestimmte Zeit (in Sekunden) anhalten und das Programm vor der Ausführung eine Zeit lang warten lassen. Das Folgende ist ein Beispiel für die Verwendung der Funktion „sleep()“:

import time

print("程序开始执行...")
time.sleep(5)
print("程序执行结束。")

Bei der Ausführung des obigen Codes hält das Programm 5 Sekunden lang an und gibt dann „Programmausführung endet“ aus.

  1. Konvertierung des Zeitformats

In der Python-Programmierung , müssen wir oft Zeitstempel in ein für Menschen lesbares Zeitformat konvertieren oder umgekehrt. Das Zeitmodul bietet zwei Hauptfunktionen: strftime() und strptime(), die zur Konvertierung des Zeitformats verwendet werden.

a. strftime()

strftime() ist eine Funktion zum Formatieren der Zeit in eine Zeichenfolge. Das Folgende ist ein Beispiel:

import time

t = (2019, 7, 18, 14, 30, 0, 0, 0, 0)
localtime = time.mktime(t)
asctime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(localtime))

print("时间格式化字符串:", asctime)

Ausgabe:

时间格式化字符串: 2019-07-18 14:30:00

Im obigen Code konvertieren wir zunächst die Zeit t in eine Zeitstempel-Ortszeit und verwenden dann die Funktion strftime(), um die Ortszeit in die erforderliche Zeichenfolgenform zu formatieren.

Zu den Parametern der Funktion strftime() gehören die Formatzeichenfolge und das Zeittupel, wobei die Formatzeichenfolge eine Vorlage zum Konvertieren des Zeittupels in eine Zeichenfolge ist. Häufig verwendete Formatierungszeichen sind wie folgt:

🏜 MonatStellt die Anzahl der Stunden im 24-Stunden-Format darStellt die Anzahl der Stunden im 12-Stunden-Format darDer Tag des JahresDer durch die Zahl (01~12) dargestellte MonatMinutenAM oder PMSekundenWoche des Jahres, Sonntag ist der Anfang der WocheWochentag, 0 (Sonntag) ~ 6 (Samstag)Die Anzahl der Wochen im Jahr, Montag ist der Anfang der Woche Lokale entsprechende DatumsdarstellungGanzjahresdarstellung (0000~9999)Die Anzahl der Stunden Differenz von UTC-ZeitDer Name der ZeitzoneDas Zeichen „%“ selbst
Formatierungszeichen Bedeutung
%a Abkürzung des Wochentags
%A vollständiger Name des Wochentags
% H
%I
%j
%m
%M
%p
%S
%U
%w
%W
%x
%
%z
%Z
%%

b. strptime()

strptime()函数则是将字符串转换为时间类型。以下是一个示例:

import time

str_time = "2019-07-18 14:30:00"
struct_time = time.strptime(str_time, "%Y-%m-%d %H:%M:%S")

print("转换后的时间元组:", struct_time)

输出:

转换后的时间元组: time.struct_time(tm_year=2019, tm_mon=7, tm_mday=18, tm_hour=14, tm_min=30, tm_sec=0, tm_wday=3, tm_yday=199, tm_isdst=-1)

在上述代码中,我们使用strptime()函数将格式为"%Y-%m-%d %H:%M:%S"的字符串str_time转换为时间元组。

  1. 时间计算

在Python编程中,我们也经常需要进行时间的计算,如计算两个时间之间的差值、或将一个时间加上或减去一段时间后得到一个新的时间。time模块中提供了很多函数来实现这些计算操作。

a. 时间差值计算

计算两个时间之间的差值可以使用time模块中的mktime()函数,该函数将时间元组转换为时间戳,我们可以通过计算两个时间的时间戳之差来得到它们之间的时间差。以下是一个示例:

import time

t1 = (2019, 7, 18, 14, 30, 0, 0, 0, 0)
t2 = (2019, 7, 19, 14, 30, 0, 0, 0, 0)

t1_stamp = time.mktime(t1)
t2_stamp = time.mktime(t2)

diff_secs = int(t2_stamp - t1_stamp)

print("两个时间之间相差的秒数:", diff_secs)

输出:

两个时间之间相差的秒数: 86400

在上述代码中,我们首先将两个时间t1、t2转换为时间戳t1_stamp、t2_stamp,接着计算两个时间戳之差得到时间差值(单位为秒)。

b. 时间加减计算

时间加减计算可以使用time模块中的mktime()函数和localtime()函数。我们可以将一个时间元组转换为时间戳,然后加上一段时间的秒数,再将结果转换为时间元组即可得到一个新的时间。以下是一个示例:

import time

t1 = (2019, 7, 18, 14, 30, 0, 0, 0, 0)
t1_stamp = time.mktime(t1)

days = 1
hours = 3
minutes = 30
seconds = 0

add_secs = days * 86400 + hours * 3600 + minutes * 60 + seconds

new_stamp = t1_stamp + add_secs

new_time = time.localtime(new_stamp)
new_strftime = time.strftime("%Y-%m-%d %H:%M:%S", new_time)

print("加上一段时间后的新时间:", new_strftime)

输出:

加上一段时间后的新时间: 2019-07-19 18:00:00

在上述代码中,我们首先将时间t1转换为时间戳t1_stamp,然后定义了要加的时间间隔,接着将时间间隔的总秒数计算出来,将其加上t1_stamp得到新的时间戳new_stamp,最后使用localtime()函数和strftime()函数将新的时间转换为字符串表示。

  1. 时间操作

time模块中定义了很多函数用于对时间进行各种操作。

a. 时间比较

time模块中的函数cmp()、min()和max()可以用来比较时间的大小。

b. 时间运算

time模块中的函数add()、sub()可以用来对时间进行加减运算。

c. 时间格式化

time模块中还提供了一个函数asctime(),用于将时间元组转换为表示当地时间的字符串。

以下是一个示例:

import time

t = (2019, 7, 18, 14, 30, 0, 0, 0, 0)

asctime = time.asctime(t)

print("时间格式化字符串:", asctime)

输出:

时间格式化字符串: Thu Jul 18 14:30:00 2019

以上是time模块的基本使用方式和一些常用函数的介绍。通过学习并掌握time模块的使用方法,我们可以更加方便地进行Python编程中的时间操作与计算。

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung des Zeitmoduls in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn