Python offre plusieurs façons d’obtenir l’heure actuelle, chacune ayant ses propres forces et faiblesses. Cet article vous guidera à travers trois méthodes populaires : l’utilisation des bibliothèques datetime
, time
et arrow
.
Table des matières
- Utilisation du module
datetime
- Utilisation du module
time
- Utilisation de la bibliothèque
arrow
- Gestion des fuseaux horaires
- Formatage de la sortie de l’heure
- Conclusion
Utilisation du module datetime
Le module datetime
fait partie de la bibliothèque standard de Python. Pour obtenir l’heure actuelle, utilisez datetime.now()
:
import datetime
now = datetime.datetime.now()
print(now)
Cela affiche la date et l’heure actuelles. Vous pouvez accéder aux composants individuels :
year = now.year
month = now.month
day = now.day
hour = now.hour
minute = now.minute
second = now.second
microsecond = now.microsecond
print(f"L'heure actuelle est : {hour}:{minute}:{second}")
Utilisation du module time
Le module time
renvoie l’heure sous forme d’horodatage (secondes depuis l’époque).
import time
timestamp = time.time()
print(timestamp) # Secondes depuis l'époque
Ceci est utile pour calculer les différences de temps. Pour convertir au format lisible, utilisez datetime
:
import time
import datetime
timestamp = time.time()
current_time = datetime.datetime.fromtimestamp(timestamp)
print(current_time)
Utilisation de la bibliothèque arrow
La bibliothèque arrow
(pip install arrow
) fournit une interface plus conviviale, notamment pour les fuseaux horaires et le formatage :
import arrow
now = arrow.now()
print(now)
Gestion des fuseaux horaires
Pour les opérations tenant compte du fuseau horaire, utilisez la bibliothèque pytz
avec datetime
ou exploitez les capacités intégrées d’arrow
:
import datetime
import pytz
tz = pytz.timezone('America/Los_Angeles')
now = datetime.datetime.now(tz)
print(now)
#Utilisation d'arrow
import arrow
pacific_time = arrow.now('US/Pacific')
print(pacific_time)
Formatage de la sortie de l’heure
Utilisez strftime()
avec datetime
ou les méthodes de formatage d’arrow
pour une sortie personnalisée :
import datetime
now = datetime.datetime.now()
formatted_time = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_time)
import arrow
formatted_time = arrow.now().format("YYYY-MM-DD HH:mm:ss ZZ")
print(formatted_time)
Conclusion
datetime
est généralement recommandé pour sa facilité d’utilisation et son inclusion dans la bibliothèque standard. time
convient aux opérations d’horodatage de bas niveau, et arrow
simplifie la gestion des fuseaux horaires et le formatage, mais nécessite une installation supplémentaire.