Maison  >  Article  >  développement back-end  >  Comment convertir le temps entre les fuseaux horaires en Python ?

Comment convertir le temps entre les fuseaux horaires en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-27 03:38:03130parcourir

How to Convert Time Between Timezones in Python?

Conversion de fuseau horaire Python

La conversion de l'heure entre les fuseaux horaires est une tâche courante en Python. La bibliothèque datetime fournit les outils nécessaires pour faciliter ce processus.

Conversion vers un fuseau horaire différent

Pour convertir un objet datetime vers un fuseau horaire différent, utilisez astimezone() méthode. Cette méthode prend un objet fuseau horaire pytz comme argument et renvoie un nouvel objet datetime dans le fuseau horaire spécifié.

Par exemple, le code suivant convertit un objet datetime UTC en un objet datetime dans le fuseau horaire Amérique/Los_Angeles :

<code class="python">from datetime import datetime
import pytz

utc_dt = datetime(2023, 3, 8, 12, 0, 0, tzinfo=pytz.utc)
la_dt = utc_dt.astimezone(pytz.timezone('America/Los_Angeles'))</code>

Conversion à partir d'un fuseau horaire différent

Pour convertir un objet datetime à partir d'un fuseau horaire différent, utilisez la méthode localize(). Cette méthode prend un objet fuseau horaire pytz et un objet datetime naïf (sans informations de fuseau horaire) comme arguments et renvoie un nouvel objet datetime dans le fuseau horaire spécifié.

Par exemple, le code suivant convertit un objet datetime en Amérique/ Fuseau horaire de Los_Angeles vers un objet datetime UTC :

<code class="python">from datetime import datetime
import pytz

la_dt = datetime(2023, 3, 8, 12, 0, 0, tzinfo=pytz.timezone('America/Los_Angeles'))
utc_dt = la_dt.astimezone(pytz.utc)</code>

Gestion d'une heure inexistante

Lors de la conversion vers un fuseau horaire différent, il est possible de rencontrer une heure inexistante en raison aux changements d’heure d’été. La méthode localize() déclenche une exception NonExistentTimeError dans de tels cas. Pour gérer cette exception, utilisez les blocs try/sauf comme indiqué dans l'exemple fourni.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn