Python fournit plusieurs outils pour travailler avec la date et l’heure. Les modules time
et datetime
sont souvent utilisé pour gérer la date et l’heure dans un programme. Le formatage de la date est l’une des tâches les plus importantes auxquelles les programmeurs sont confrontés.
Parfois, un utilisateur peut avoir besoin de la date et de l’heure actuelles du système. Ces opérations sont facilement traitées par les différentes méthodes et modules intégrés dans Python.
Bien que nous puissions utiliser le module time
pour connaître la date et l’heure actuelles, il manque certaines fonctionnalités. Cependant, le module datetime
permet d’effectuer toute les manipulations d’objet concernant la date et l’heure.
Le module time
Le module time
en Python vous permet de travailler avec divers fonctions liées au temps. La fonction la plus basique du module est time()
. Le calcul du temps est basé sur ce qu’on appel l’époque ou epoch en anglais. Le timestamp
du système Unix commence le 01/01/1970.
import time
t = time.gmtime(0)
print(t)
L’exécution du code.
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
import time
t = time.time()
print(t)
Le timestamp ou le nombre de secondes passés depuis le premier janvier de l’année 1970.
1612980582.6997607
Cela peut être utile pour stocker ou comparer des dates mais ne convient pas pour l’affichage.
time.ctime
Convertit l’heure en secondes depuis l’époque en une chaîne représentant l’heure locale.
import time
t = time.ctime()
print(t)
Wed Feb 10 19:05:06 2021
time.sleep()
Il arrête l’exécution du thread en cours pendant le nombre de secondes spécifié. Vous pouvez passer une valeur à virgule comme argument pour un temps de pause plus précis.
import time
# afficher le temps actuel
print("Début de l'exécution : ", end="")
print(time.ctime())
# Utiliser sleep() pour faire une pause
print('Attendre 5 secondes.')
time.sleep(5)
# utiliser ctime() pour afficher le temps actuel
print("Fin de l'exécution : ", end="")
print(time.ctime())
L’exécution du code.
Début de l'exécution : Wed Feb 10 20:01:34 2021
Attendre 5 secondes.
Fin de l'exécution : Wed Feb 10 20:01:39 2021
time.strftime ()
Convertir les objets de date en chaînes lisibles. Ainsi, nous pouvons afficher le mois ou le jour dans un format de chaîne lisible au lieu d’une représentation numérique.
import datetime
a = datetime.datetime(2020,6,19)
print(a.strftime("%d"), a.strftime("%B"))
19 June
Le module datetime
Le module datetime possède de nombreuses fonctions utiles. En fait, un objet datetime
est un objet qui stocke des informations d’un moment précis. Des informations telles que l’année, le mois, le jour, l’heure, les minutes et les secondes. Donc, nous pouvons utiliser ces informations pour faire référence à un moment particulier dans le temps.
datetime.date
Python affiche les dates de différentes manières. Le format datetime.date
est l’un des objets de date les plus simples.
import datetime
t = datetime.date(2012, 12, 14)
print(t)
print("Année : ", t.year)
print("Mois : ", t.month)
print("Jour : ", t.day)
2012-12-14
Année : 2012
Mois : 12
Jour : 14
Afficher la date actuelle du système.
import datetime
t = datetime.date.today()
print(t)
2021-02-10
datetime.datetime
Dans l’ instruction ‘ datetime.datetime
‘, le premier datetime
est le module et le second est la classe datetime
qui contient des informations sur les objets date
et time
.
Renvoyer la date et l’heure aujourd’hui
La classe datetime
fournie une méthode que vous pouvez utiliser pour obtenir un objet qui stocke la date du jour:
import datetime
print(datetime.datetime.now())
2021-02-11 20:35:48.876821
Aussi, vous pouvez utiliser datetime.datetime.today()
pour récupérer l’heure et la date actuelles, mais cela peut parfois être moins précis.
Notez que nous obtenons des valeurs en microsecondes . Cela peut être inutile, mais lorsqu’il s’agit d’un ordinateurs, cela peut parfois être utile.
Comment analyser les dates ?
Supposons qu’un utilisateur vous donne la date d’aujourd’hui sous forme de chaîne : 23-12-2020. Cette chaîne est au format « jour-mois-année ».
Nous pouvons utiliser .strptime
pour analyser une date dans un objet datetime
.
import datetime
votre_date = input("Saisissez la date d'aujourd'hui. Utilisez un tiret comme séparateur : ")
t = datetime.datetime.strptime(votre_date, "%d-%m-%Y")
print(t)
Saisissez la date d'aujourd'hui. Utilisez un tiret comme séparateur : 21-02-2021
2021-02-21 00:00:00
1 commentaire
H.BA · 21 mars 2023 à 10 h 11 min
Très bien expliqué. Il serait intéressant de rajouter « timedelta » dans cette partie Datetime.
cordialement.