Wie man mit Datetime in Django umgeht (strftime/strptime)

不言
Freigeben: 2023-04-02 08:46:01
Original
2556 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die Verarbeitungsmethode von datetime in Django vor (strftime/strptime). Dieser Artikel stellt Sie ausführlich vor und hat einen bestimmten Referenzwert.

strftime< ;Konvertieren Sie Datum, Datum und Uhrzeit, timezone.now()-Typverarbeitung in Zeichenfolgentyp>

Die Funktion strftime() ist eine Funktion zum Formatieren von Datum, Datum und Uhrzeit. Unterstützt Datum, Datum und Uhrzeit und andere Klassen und formatiert diese Zeiten als Strings durch Formatzeichen.

import datatime
datatime.datatime.now()
Nach dem Login kopieren

oder

from datatime import datatime
datatime.now()
Nach dem Login kopieren

Mein Ausgabekonvertierungsformat ist

strftime(&#39;%Y-%m-%d %H:%I:%S&#39;)

Der Effekt ist ähnlich wie 2018-07-02 23:18: 20.

strptime

Die Funktion strptime() dient dazu, Datum und Uhrzeit aus einem String entsprechend zu formatieren Formatierungszeichenfolgenanforderungen. Konvertieren Sie in das entsprechende Datum und die entsprechende Uhrzeit.

d2 = datetime.strptime(&#39;2018-03-02 17:41:20&#39;, &#39;%Y-%m-%d %H:%M:%S&#39;)
Nach dem Login kopieren

Konvertierungskontrollformat:

In String konvertieren

%y zweistellige Jahresdarstellung (00-99)
%Y vierjährige Darstellung in Ziffern (000-9999)
%m Monat (01-12)
%d Tag im Monat (0-31)
%H 24-Stunden-Stunde (0-23 )
%I 12-Stunden-Uhr Stunden (01-12) 12-Stunden-Uhr
%M Minuten (00=59)
%S Sekunden (00-59)

Zwei Fehler aufgetreten:

Erstens: Die Anzeigezeit stimmt nicht mit dem Datenbankfehler überein:

Einmal bin ich auf ein solches Problem gestoßen, die Zeit Die aus der Datenbank entnommene Zeit stimmte nicht mit der im Frontend angezeigten Zeit überein. Später, nachdem ich weitere Informationen ausgegeben und die Zeit konvertiert hatte, stellte ich schließlich fest, dass der Kollege, der den Code zuvor geschrieben hatte, dieses

one[&#39;time&#39;] = one[&#39;time&#39;].strftime(&#39;%Y-%m-%d %H:%I:%S&#39;)
Nach dem Login kopieren

%I verwendet hatte ist die Konvertierungsform der Zwölf-Stunden-Uhr. Bei dieser Konvertierung wird zwar kein Fehler gemeldet, das Ausgabeergebnis stimmt jedoch nicht mit der Datenbank überein.

Zweitens: datetime.datetime(2018, 2, 2, 18, 25, 29, tzinfo=) ist nicht JSON-serialisierbar

Eine Fehlermeldung wie diese wird angezeigt. .

datetime.datetime(2018, 2, 2, 18, 25, 29, tzinfo=<UTC>) is not JSON serializable
Nach dem Login kopieren

Dies ist die Fehlermeldung, die angezeigt wird, wenn Datetime-Daten direkt in JSON platziert werden. Sie können nicht direkt in JSON platziert werden.

Die Lösung ist: Sie können strftime für die Serialisierung verwenden Beispiel die folgende Methode

.strftime("%Y-%m-%d %H:%M:%S")
Nach dem Login kopieren

Sehen wir uns die detaillierte Erklärung von Python an: Zeit, Strftime und Strptime

Die am häufigsten verwendete Zeit. time() Was zurückgegeben wird, ist eine Gleitkommazahl in Sekunden. Der von strftime verarbeitete Typ ist jedoch time.struct_time, bei dem es sich tatsächlich um ein Tupel handelt. Sowohl strptime als auch localtime geben diesen Typ zurück.

>>> import time
>>> t = time.time()
>>> t
1202872416.4920001
>>> type(t)
<type &#39;float&#39;>
>>> t = time.localtime()
>>> t
(2008, 2, 13, 10, 56, 44, 2, 44, 0)
>>> type(t)
<type &#39;time.struct_time&#39;>
>>> time.strftime(&#39;%Y-%m-%d&#39;, t)
&#39;2008-02-13&#39;
>>> time.strptime(&#39;2008-02-14&#39;, &#39;%Y-%m-%d&#39;)
(2008, 2, 14, 0, 0, 0, 3, 45, -1)
Nach dem Login kopieren

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Erklärung, wie das ThinkPHP-Framework die Weiterleitung verwendet, um die Seitenumleitung zu implementieren

Das PHP-Framework CodeIgniter verwendet Redis Die Methode wird erklärt

Das obige ist der detaillierte Inhalt vonWie man mit Datetime in Django umgeht (strftime/strptime). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!