Heim > Artikel > Backend-Entwicklung > Grundlegende Einführung in die Zeit in Python
In Python umfassen Module im Zusammenhang mit der Zeitverarbeitung: Uhrzeit, Datum/Uhrzeit und Kalender.
Verwandte Empfehlungen: „Python-Video“
In Python gibt es normalerweise mehrere Möglichkeiten, Zeit darzustellen:
1) Zeitstempel
2) Formatierte Zeitzeichenfolge
3) Tupel (struct_time) mit insgesamt neun Elementen.
Da die Zeitmodulimplementierung von Python hauptsächlich die C-Bibliothek aufruft, kann jede Plattform anders sein. UTC (koordinierte Weltzeit) ist die Greenwich Astronomical Time, die Weltstandardzeit. In China ist es UTC+8. DST (Daylight Saving Time) ist die Sommerzeit. Zeitstempel-Methode (Zeitstempel): Im Allgemeinen stellt ein Zeitstempel den Versatz in Sekunden ab 00:00:00 Uhr am 1. Januar 1970 dar. Wir führen „type(time.time())“ aus und der Rückgabetyp ist float. Zu den Funktionen, die Zeitstempel zurückgeben, gehören hauptsächlich time(), clock() usw. Tupel-Methode (struct_time): Das Tupel struct_time besteht aus insgesamt 9 Elementen. Zu den Funktionen, die struct_time zurückgeben, gehören hauptsächlich gmtime(), localtime() und strptime(). Hier sind mehrere Elemente in der Metagruppe:
Indexattribut (Attribut) >1 1 - 12 Zeit) - 59
7 TM_YDAY (der erste Tag des Jahres) 1 -366
8 TM_ISDST (ob Sommerzeit ist) Standard -1
Funktionen:
1) time.localtime([Sek.]): Konvertieren Sie einen Zeitstempel in struct_time in der aktuellen Zeitzone. Wenn der Parameter „secs“ nicht angegeben wird, hat die aktuelle Zeit Vorrang.
>>> time.localtime() time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=14, tm_min=14, tm_sec=50, tm_wday=3, tm_yday=125, tm_isdst=0) >>> time.localtime(1304575584.1361799) time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=14, tm_min=6, tm_sec=24, tm_wday=3, tm_yday=125, tm_isdst=0)
2) time.gmtime([secs]): Ähnlich wie die Methode localtime() konvertiert die Methode gmtime() einen Zeitstempel in eine struct_time in der UTC-Zeitzone (0-Zeitzone).
>>>time.gmtime() time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=6, tm_min=19, tm_sec=48, tm_wday=3, tm_yday=125, tm_isdst=0)
3) time.time(): Gibt den Zeitstempel der aktuellen Zeit zurück.
>>> time.time() 1304575584.1361799
4) time.mktime(t): Wandelt eine struct_time in einen Zeitstempel um.
>>> time.mktime(time.localtime()) 1304576839.0
5) time.sleep(secs): Der Thread verzögert die Ausführung für die angegebene Zeit. Die Einheit ist Sekunden.
6) time.clock(): Bitte beachten Sie, dass dies auf verschiedenen Systemen unterschiedliche Bedeutungen hat. Auf UNIX-Systemen wird die „Prozesszeit“ zurückgegeben, bei der es sich um eine in Sekunden ausgedrückte Gleitkommazahl (Zeitstempel) handelt. Unter WINDOWS gibt der erste Aufruf die tatsächliche Zeit zurück, zu der der Prozess ausgeführt wird. Die Aufrufe nach dem zweiten Mal sind die laufende Zeit seit dem ersten Aufruf bis zur Gegenwart. (Eigentlich basierend auf QueryPerformanceCounter() unter WIN32, was genauer ist als die Millisekundendarstellung)
import time if __name__ == '__main__': time.sleep(1) print "clock1:%s" % time.clock() time.sleep(1) print "clock2:%s" % time.clock() time.sleep(1) print "clock3:%s" % time.clock()
Laufende Ergebnisse:
clock1:3.35238137808e-006 clock2:1.00004944763 clock3:2.00012040636
Die erste Uhr( ) gibt das laufende Programm aus time
Die zweite und dritte Clock()-Ausgabe sind die Zeitintervalle ab der ersten Uhr
7) time.asctime([t]): stellt ein Tupel oder struct_time der Zeit dar, das in dieser Form dargestellt wird : „So, 20. Juni 23:21:05 1993“. Wenn keine Parameter vorhanden sind, wird time.localtime() als Parameter übergeben.
>>> time.asctime() 'Thu May 5 14:55:43 2011'
8) time.ctime([Sek.]): Konvertieren Sie einen Zeitstempel (eine in Sekunden berechnete Gleitkommazahl) in die Form von time.asctime(). Wenn der Parameter nicht angegeben ist oder None ist, wird standardmäßig time.time() als Parameter verwendet. Seine Funktion entspricht time.asctime(time.localtime(secs)).
>>> time.ctime() 'Thu May 5 14:58:09 2011' >>> time.ctime(time.time()) 'Thu May 5 14:58:39 2011' >>> time.ctime(1304579615) 'Thu May 5 15:13:35 2011'
9) time.strftime(format[, t]): Konvertieren Sie ein Tupel, das Zeit oder struct_time darstellt (wie z. B. von time.localtime() und time.gmtime() zurückgegeben), in eine formatierte Zeitzeichenfolge. Wenn t nicht angegeben ist, wird time.localtime() übergeben. Wenn ein Element im Tupel außerhalb der Grenzen liegt, wird ein ValueError ausgelöst.
Format Bemerkungen
%Ein Gebietsschema (Gebietsschema) Vereinfachter Tag der Woche Name B Lokaler vereinfachter Monat Name
%b Lokaler Monat Name des Monats% C Lokales entsprechendes Datum und Uhrzeit geben
Den ersten Tag eines Monats (01-31)
> Die erste Stunde des Tages (24 Stunden, 00-23)
%I (12 Stunden, 01-12)%j pro Jahr Der Tag des Monats (001 - 366) )
%p 本地am或者pm的相应符 一
%S 秒(01 - 61) 二
%U 一年中的星期数。(00 - 53星期天是一个星期的开始。)
第一个星期天之前的所有天数都放在第0周。 三
%w 一个星期中的第几天(0 - 6,0是星期天) 三
%W 和%U基本相同,不同的是%W以星期一为一个星期的开始。
%x 本地相应日期
%X 本地相应时间
%y 去掉世纪的年份(00 - 99)
%Y 完整的年份
%Z 时区的名字(如果不存在为空字符)
%% ‘%’字符
备注:
“%p”只有与“%I”配合使用才有效果。文档中强调确实是0 - 61,而不是59,闰年秒占两秒(汗一个)。当使用strptime()函数时,只有当在这年中的周数和天数被确定的时候%U和%W才会被计算。
举个例子:
>>> time.strftime("%Y-%m-%d %X", time.localtime()) '2011-05-05 16:37:06'
10)time.strptime(string[, format]):把一个格式化时间字符串转化为struct_time。实际上它和strftime()是逆操作。
>>> time.strptime('2011-05-05 16:37:06', '%Y-%m-%d %X') time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=16, tm_min=37, tm_sec=6, tm_wday=3, tm_yday=125, tm_isdst=-1)
在这个函数中,format默认为:"%a %b %d %H:%M:%S %Y"。
最后,我们来对time模块进行一个总结。根据之前描述,在Python中共有三种表达方式:1)timestamp 2)tuple或者struct_time 3)格式化字符串。
它们之间的转化如图所示:
Das obige ist der detaillierte Inhalt vonGrundlegende Einführung in die Zeit in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!