Ajouter des secondes à une date en Python #
Utiliser le timedelta()
de la classe datetime
pour ajouter des secondes à
datetime, par exemple result = dt + timedelta(seconds=24)
. Le site timedelta
peut
être passée à un seconds
et ajoute le nombre de secondes spécifiées à la date
date.
from datetime import datetime, timedelta
dt = datetime(2023, 9, 24, 9, 30, 35)
print(dt)
result = dt + timedelta(seconds=24)
print(result)
now = datetime.today()
print(now)
result_2 = now + timedelta(seconds=15)
print(result_2)
Si vous n’avez qu’un composant temporel, par ex. 09:30:13
faites défiler vers le bas jusqu’au dernier extrait de code.
Assurez-vous d’importer le datetime
et
timedelta
de la classe datetime
module.
Le premier exemple utilise le module
datetime
pour créer une classe datetime
objet.
Nous avons passé des valeurs pour le year
, month
, day
, hour
, minute
et second
arguments.
Une fois que nous avons un datetime
nous pouvons utiliser la fonction timedelta
pour ajouter
secondes à cet objet.
from datetime import datetime, timedelta
dt = datetime(2023, 9, 24, 9, 30, 35)
print(dt)
result = dt + timedelta(seconds=24)
print(result)
Le deuxième exemple ajoute des secondes à l’heure actuelle.
from datetime import datetime, timedelta
now = datetime.today()
print(now)
result_2 = now + timedelta(seconds=15)
print(result_2)
Le site
datetime.today()
renvoie la date locale actuelle.
Nous devons utiliser une méthode datetime
car il reprend automatiquement les minutes, heures, jours, mois et années si nécessaire.
Cela ne serait pas possible si nous n’avions que le composant temps. Par exemple,
11:59:30PM
+ 50
Les secondes soulèveraient une exception.
Si vous ne disposez que de la composante temporelle, utilisez la fonction datetime.combine
pour combiner l’heure avec la date actuelle (ou une autre date) et obtenir une valeur de datetime
objet.
from datetime import datetime, date, timedelta, time
t = time(9, 30, 13)
print(t)
result = datetime.combine(date.today(), t) + timedelta(seconds=27)
print(result)
only_t = result.time()
print(only_t)
Le site
datetime.combine
prend un date
et time
comme arguments et renvoie un nouveau datetime
en les combinant.
Une fois que nous obtenons un datetime
nous pouvons utiliser la fonction timedelta
pour ajouter des secondes
à cet objet.
Utilisez l’option time()
sur la méthode datetime
si vous avez seulement besoin d’extraire l’heure
l’heure après l’opération.
from datetime import datetime, date, timedelta, time
t = time(9, 30, 13)
print(t)
result = datetime.combine(date.today(), t) + timedelta(seconds=27)
print(result)
only_t = result.time()
print(only_t)
Le site
datetime.time
renvoie un objet temps avec les mêmes heure, minute, seconde et milliseconde.