Zusammenfassung der Kenntnisse zur Python-Zeiterfassung und -Konvertierung

高洛峰
Freigeben: 2017-01-12 15:30:29
Original
1547 Leute haben es durchsucht

Zeitverarbeitung ist die häufigste Anforderung in unserer täglichen Entwicklung, wie zum Beispiel: Abrufen der aktuellen Datumszeit, Abrufen des heutigen Datums, Abrufen von morgen/vorherigen N Tagen, Abrufen der Start- und Endzeit des Tages (00:00:00 23 :59:59 ), den Zeitunterschied zwischen zwei Datumsangaben, den letzten Tag dieser Woche/dieses Monats/letzten Monats usw. abrufen. Diese Konvertierungen scheinen chaotisch und schwer zu merken zu sein, daher werden wir heute die Zeitverarbeitung von Python zusammenfassen.

Prinzip: Nehmen Sie datetime als Zentrum, Ausgangspunkt oder Transit und konvertieren Sie es in das Zielobjekt, um die in den meisten Geschäftsszenarien erforderliche Datumskonvertierungsverarbeitung abzudecken

Schritte:

1. Beherrschen Sie mehrere Objekte und ihre Beziehungen

2. Verstehen Sie die grundlegenden Betriebsmethoden jedes Objekttyps

3 >datetime ist Datum Eine Kombination mit Zeit, einschließlich aller Informationen zu Datum und Uhrzeit.


Der Funktionsprototyp ist:


datetime datetime (Jahr, Monat, Tag[ , Stunde[ , Minute[ , Sekunde[ , Mikrosekunde[ , tzinfo] ] ] ] ] )

Die Bedeutung jedes Parameters ist dieselbe wie in den Datums- und Uhrzeitkonstruktoren. Achten Sie auf den Bereich der Parameterwerte.


Beispiel:

1. Holen Sie sich das Datetime-Objekt

Der Code lautet wie folgt:

2. Holen Sie sich den Zeitstempel (Timestamp)
import datetime
now = datetime.datetime.now()
#输出:datetime.datetime(2016, 11, 26, 8, 34, 30, 876359)
Nach dem Login kopieren

Der Zeitstempel ist die Anzahl der Sekunden seit dem 1. Januar 1970 (00:00:00 GMT). Er wird auch Unix-Zeitstempel genannt.

Der Code lautet wie folgt:

3. Holen Sie sich das Zeittupel (Tupel)
import time
time.time()
#输出:1480120686.733905
Nach dem Login kopieren

Der Code lautet wie folgt:

4. Uhrzeit-String abrufen (String)
import time
time.localtime()
#输出:time.struct_time(tm_year=2016, tm_mon=11, tm_mday=26, tm_hour=8, tm_min=39, tm_sec=33, tm_wday=5, tm_yday=331, tm_isdst=0)
Nach dem Login kopieren

String-Format-Parameterliste:

datetime (format)

%a: Abkürzung der Woche. Beispielsweise ist Mittwoch Web
%A: Der vollständige Buchstabe der Woche. Beispielsweise ist Mittwoch Mittwoch
%b: die Abkürzung für Monat. Beispielsweise ist April Apr
%B: der ganze Monat. Der Monat April ist beispielsweise April
%c: Zeichenfolgendarstellung von Datum und Uhrzeit. (Zum Beispiel: 07.04.10 10:43:39)
%d: Die Anzahl der Tage in diesem Monat (der Tag des Monats)
%f: Mikrosekunden (Bereich [0,999999 ])
%H: Stunde (24-Stunden-Format, [0, 23])
%I: Stunde (12-Stunden-Format, [0, 11])
%j: Die Anzahl der Tage im Jahr [001,366] (der Tag des Jahres)
%m: Monat ([01,12])
%M: Minute ([00,59])
%p: AM oder PM
%S: Sekunden (Bereich ist [00, 61], warum nicht [00, 59], siehe Python-Handbuch~_~)
%U: Die Anzahl der Wochen im aktuellen Jahr und die Anzahl der Wochen im laufenden Jahr), Sonntag als erster Tag der Woche
%w: Die Anzahl der heutigen Tage in dieser Woche, der Bereich ist [0, 6], 6 bedeutet Sonntag
%W: Die Zahl Anzahl der Wochen im aktuellen Jahr (die Nummer des aktuellen Jahres), Montag ist der erste Tag der Woche
%x: Datumszeichenfolge (z. B.: 07.04.10)
%X: Zeitzeichenfolge (z. B : 10:43:39)
%y: Jahr dargestellt durch 2 Ziffern
%Y: Jahr dargestellt durch 4 Ziffern
%z: Intervall mit UTC-Zeit (wenn es Ortszeit ist, geben Sie eine leere Zeichenfolge zurück )
%Z: Zeitzonenname (wenn es sich um die Ortszeit handelt, wird eine leere Zeichenfolge zurückgegeben)
%%: %% => %

Der Code lautet wie folgt:

5.date (Datum)
import datetime
datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
'2016-11-26 08:40:39'
Nach dem Login kopieren

Der Code lautet wie folgt:

import datetime
datetime.datetime.now().date()
datetime.date(2016, 11, 26)
Nach dem Login kopieren

6. Holen Sie sich das heutige Datum

Der Der Code lautet wie folgt:

7. Holen Sie sich morgen/die letzten N Tage
import datetime
datetime.date.today()
datetime.date(2016, 11, 26)
Nach dem Login kopieren

Morgen

Der Code lautet wie folgt:

import datetime
datetime.date.today() + datetime.timedelta(days=1)
datetime.date(2016, 11, 27)
Nach dem Login kopieren

Vor zwei Tagen

Der Code lautet wie folgt:

import datetime
>>> datetime.datetime.now()
datetime.datetime(2016, 11, 26, 8, 42, 59, 665368)
>>> datetime.datetime.now() - datetime.timedelta(days=3)
datetime.datetime(2016, 11, 24, 8, 43, 14, 696948)
Nach dem Login kopieren

8. 00:00 23:59:59)

Der Code lautet wie folgt:

import datetime
datetime.datetime.combine(datetime.date.today(), datetime.time.min)
datetime.datetime(2016, 11, 26, 0, 0)
datetime.datetime.combine(datetime.date.today(), datetime.time.max)
datetime.datetime(2016, 11, 26, 23, 59, 59, 999999)
Nach dem Login kopieren

9. Ermitteln Sie den Zeitunterschied zwischen zwei Datumsangaben

Der Code lautet wie folgt:

import datetime
(datetime.datetime(2016,12,13,12,0,0) - datetime.datetime.now()).total_seconds()
1480506.809658
Nach dem Login kopieren

10. Holen Sie sich den letzten Tag dieser Woche/dieses Monats/letzten Monats

Diese Woche

Code lautet wie folgt:

import datetime
today = datetime.date.today()
#输出: datetime.date(2016, 11, 26)
sunday = today + datetime.timedelta(6 - today.weekday())
#输出:datetime.date(2016, 11, 27)
Nach dem Login kopieren

Der

-Code dieses Monats lautet wie folgt:

import calendar
today = datetime.date.today()
last_day_num = calendar.monthrange(today.year, today.month)
last_day = datetime.date(today.year, today.month, last_day_num)
#输出:datetime.date(2016, 11, 30)
Nach dem Login kopieren

11 . Holen Sie sich den letzten Tag des letzten Monats (kann sich über ein neues Jahr erstrecken)

Der Code lautet wie folgt:

import datetime
today = datetime.date.today()
first = datetime.date(day=1, month=today.month, year=today.year)
lastMonth = first - datetime.timedelta(days=1)
#输出:datetime.date(2016, 10, 31)
Nach dem Login kopieren

Andere Verwendungsbeispiele:

Der Code lautet wie folgt:

#当月1号
datetime.date(datetime.date.today().year,datetime.date.today().month,1)
#当月1号
datetime.date.today().replace(day=1)
#上月1号
(datetime.date.today().replace(day=1) - datetime.timedelta(1)).replace(day=1)
Nach dem Login kopieren

Das Obige ist eine Zusammenfassung der vom Herausgeber vorgestellten Kenntnisse zur Python-Zeiterfassung und -konvertierung. Ich hoffe, dass es für Sie hilfreich ist. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte mich auch bei Ihnen allen für Ihre Unterstützung der chinesischen PHP-Website bedanken!

Weitere Artikel zu Python-Zeiterfassungs- und Konvertierungswissenszusammenfassungen finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage