Lors de la création d'un type datetime à partir d'une chaîne de caractères et de son enregistrement dans elasticsearch,
C'était étrange si je ne spécifiais pas le fuseau horaire.
C'est le mémorandum ''
auquel je suis allé à ce moment-là. J'aimerais savoir s'il existe un moyen plus simple.
--Format de chaîne:
AAAA-mm-jj HH: MM: SS + 0900 ''
--Ajout de + 0900 '' à la fin (car c'est UTC + 9 heures) --Strptime () format:
``% Y-% m-% d% H:% M:% S% z --
% z``` correspond au fuseau horaire
Exemple
from datetime import datetime as dt
#Chaîne
time_str = "2020-11-22 18:00:00+0900"
#Type de date / heure, fuseau horaire compris
time_dt = dt.strptime(time_str, '%Y-%m-%d %H:%M:%S%z')
print(time_dt.tzinfo)
# UTC+09:00
fromisoformat()
Est disponible.
Étant donné que le format ISO 8601 contient des informations de fuseau horaire au format + HH: MM '' ou
-HH: MM '' à la fin,
L'argument est une chaîne de caractères similaire à cela.
python
#Chaîne
time_str = '2020-09-12 12:22:30+09:00'
#Type de date / heure, fuseau horaire compris
time_dt = dt.fromisoformat(time_str)
print(time_dt.tzinfo)
# UTC+09:00
Recommended Posts