Récupérer minutes d'un deltatime

Résolu/Fermé
blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 - Modifié le 6 juil. 2022 à 23:22
blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 - 12 juil. 2022 à 16:50
Bonjour,

voici un bout de mon code (tout simple) :

Jour = Coucher - Lever
print(Jour)
print(type(Jour))
print((Jour.minutes))


Et ce que ça donne à l'exécution :
<class 'datetime.timedelta'>
Traceback (most recent call last):
File "./sun1.py", line 30, in <module>
print((Jour.minutes))
AttributeError: 'datetime.timedelta' object has no attribute 'minutes'


Donc, la question est simple, comment je peux isoler facilement les heures, minutes, secondes de ma variable "Jour" ?

Merci d'avance.



3 réponses

mamiemando Messages postés 33081 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 27 avril 2024 7 749
Modifié le 8 juil. 2022 à 18:50

Bonjour

from datetime import datetime

dt1 = datetime(year=2022, month=7, day=8, hour=17, minute=58)
dt2 = datetime(year=2022, month=7, day=8, hour=17, minute=55)
delta = dt1 - dt2 # delta est de type datetime.timedelta
print(delta.seconds // 60)

Bonne chance

1
blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 3 289
8 juil. 2022 à 22:43

merci, ça marche.

juste que ne comprends pas pourquoi il n'y a que les secondes que l'on peut avoir pour ce type d'objet !

0
mamiemando Messages postés 33081 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 27 avril 2024 7 749 > blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024
12 juil. 2022 à 14:31

C'est comme ça que l'objet est défini, les développeurs qui ont conçu cet objet auraient pu effectivement mettre les minutes, mais ça n'est pas le choix qui a été retenu. Après une division par 60 c'est pas extrêmement compliqué à réaliser ;-)

0
blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 3 289 > mamiemando Messages postés 33081 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 27 avril 2024
12 juil. 2022 à 16:50

Voui, c'est vrai...

Et des fois, c'est une division par 3600, donc par 60 deux fois de suite ! ;-)

0
Whismeril Messages postés 19030 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 27 avril 2024 931
6 juil. 2022 à 23:31
0
blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 3 289
7 juil. 2022 à 10:56

Y'a pas plus simple ?

0
Whismeril Messages postés 19030 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 27 avril 2024 931
7 juil. 2022 à 12:58

J'ai trouvé que ça....


0
blux Messages postés 26013 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 3 289
7 juil. 2022 à 14:04

J'ai peut-être trouvé autre chose, à valider...

0