165 votes

Différence entre les modules Python datetime et time

J'essaie de comprendre les différences entre la datetime y time les modules, et ce à quoi chacun d'eux doit servir.

Je sais que datetime fournit à la fois les dates et l'heure. Quelle est l'utilité du time module ?

Des exemples seraient appréciés et les différences concernant les fuseaux horaires seraient particulièrement intéressantes.

121voto

IfLoop Points 59461

El time est principalement destiné à travailler avec les horodateurs Unix, exprimés sous la forme d'un nombre à virgule flottante correspondant aux secondes écoulées depuis l'époque Unix. le module datetime peut prendre en charge un grand nombre des mêmes opérations, mais fournit un ensemble de types plus orientés objet, et dispose également d'un support limité pour les fuseaux horaires.

26voto

Serge Stroobandt Points 525

S'en tenir à time pour éviter toute ambiguïté concernant l'heure d'été.

Utilisation exclusive du système time au lieu du module datetime module pour éviter les problèmes d'ambiguïté avec l'heure d'été (DST) .

La conversion vers n'importe quel format horaire, y compris l'heure locale, est assez facile :

import time
t = time.time()

time.strftime('%Y-%m-%d %H:%M %Z', time.localtime(t))
'2019-05-27 12:03 CEST'

time.strftime('%Y-%m-%d %H:%M %Z', time.gmtime(t))
'2019-05-27 10:03 GMT'

time.time() est un nombre à virgule flottante représentant le temps en secondes depuis l'époque du système. time.time() est idéal pour un horodatage sans ambiguïté.

Si le système exécute en plus le protocole de temps réseau (NTP) dæmon, on se retrouve avec une base de temps assez solide.

Voici le documentation de la time module.

5voto

Jan S Points 1396

Le module de temps peut être utilisé lorsque vous avez juste besoin de l'heure d'un enregistrement particulier - par exemple, si vous avez une table/fichier séparée pour les transactions de chaque jour, vous avez juste besoin de l'heure. Cependant, le type de données time est généralement utilisé pour stocker l'heure. différence entre 2 points du temps.

On peut aussi utiliser le module datetime, mais si l'on ne s'occupe que de l'heure d'un jour particulier, on peut utiliser le module time.

La date est utilisée pour stocker une donnée et une heure particulières pour un enregistrement. Comme dans une agence de location. La date d'échéance serait un datatype datetime.

3voto

Donkopotamus Points 1284

Si vous êtes intéressé par les fuseaux horaires, vous devriez envisager l'utilisation de pytz.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X