Maison > développement back-end > Tutoriel Python > Comment convertir des objets datetime Python en secondes ?

Comment convertir des objets datetime Python en secondes ?

Mary-Kate Olsen
Libérer: 2024-10-26 10:09:30
original
887 Les gens l'ont consulté

How to Convert Python Datetime Objects to Seconds?

Conversion d'objets datetime en secondes en Python

Lorsque vous travaillez avec des objets datetime en Python, il devient souvent nécessaire de les convertir en secondes pour diverses à des fins analytiques. Cependant, la méthode toordinal() peut ne pas fournir le résultat souhaité, car elle ne fait la différence qu'entre les dates avec des jours distincts.

Pour convertir avec précision un objet datetime en secondes, en particulier pour la date spécifique du 1er janvier 1970, plusieurs options sont disponibles. Pour toutes les autres dates de début, vous devrez calculer le décalage horaire entre les deux dates.

Pour le 1er janvier 1970 :

  1. datetime.datetime.timestamp() : Cette méthode renvoie directement le nombre de secondes écoulées depuis l'époque Unix, qui correspond à 00:00:00 UTC le 1er janvier 1970.

    <code class="python">t = datetime.datetime(1970, 1, 1)
    seconds = t.timestamp()</code>
    Copier après la connexion
  2. time.mktime() : La fonction time.mktime() peut également être utilisée pour convertir un objet datetime en secondes depuis l'époque Unix.

    <code class="python">import time
    t = datetime.datetime(1970, 1, 1)
    time_struct = t.timetuple()
    seconds = time.mktime(time_struct)</code>
    Copier après la connexion

Pour toute autre date de début :

  1. timedelta.total_seconds() : La soustraction de deux objets datetime entraîne un objet timedelta. La méthode total_seconds() de timedelta fournit le nombre de secondes entre les deux dates.

    <code class="python">t = datetime.datetime(2009, 10, 21, 0, 0)
    starting_date = datetime.datetime(1970, 1, 1)
    seconds = (t - starting_date).total_seconds()</code>
    Copier après la connexion

Il est important de noter que la date de début doit être spécifiée en UTC (temps universel coordonné). pour des résultats précis. Si votre datetime n'est pas en UTC, vous devrez la convertir ou attacher une classe tzinfo avec le décalage approprié.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal