Maison > Article > développement back-end > Voici quelques options de titre, en gardant à l'esprit le format de questions et réponses : **Plus direct
Conversion d'objets datetime en secondes en Python
Problème :
Vous avez plusieurs objets datetime et doivent calculer le nombre de secondes qui se sont écoulées depuis une heure fixe dans le passé (par exemple, le 1er janvier 1970) pour chaque objet. Alors que t.toordinal() semble faire la différence uniquement entre les dates avec des jours différents, vous visez une conversion plus précise en secondes.
Solution :
Pour la date spécifique du 1er janvier 1970, vous avez plusieurs options :
Convertir en objet temporel et utiliser mktime() :
<code class="python">import time time.mktime(t.timetuple())</code>
Utiliser la méthode total_seconds() d'un objet timedelta (disponible dans Python 2.7 et versions ultérieures) :
<code class="python">from datetime import timedelta (t - datetime.datetime(1970, 1, 1)).total_seconds()</code>
Pour toute autre date de début, vous devez soustraire les deux dates pour obtenir un timedelta objet puis utilisez sa fonction total_seconds() :
<code class="python">from datetime import datetime, timedelta (t - datetime.datetime(2000, 1, 1)).total_seconds()</code>
N'oubliez pas que la date de début est généralement spécifiée en UTC. Si votre objet datetime n'est pas en UTC, convertissez-le avant de l'utiliser, ou fournissez une classe tzinfo avec le décalage correct.
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!