Les date et l’heure actuelles en python
Sommaire
- 1- Objectifs
- 2- Présentation
- 3- Types disponibles
- 3.1- class datetime.date
- 3.2- class datetime.time
- 3.3- class datetime.datetime
- 3.4- class datetime.timedelta
- 3.5- class datetime.tzinfo
- 3.6- class datetime.timezone
- 4- Les codes de formatage des dates dans le fuseau horaire américain
- 5- Comment utiliser les classes
Date
etDateTime
- 5.1- La classe
date
- 5.2- La classe
datetime
- 6- Applications
- 6.1.1- Sommaire du cours Python
Les date et l’heure actuelles en python
-
Objectifs
- Etre capable d’effectuer l’analyse, le formatage et l’arithmétique des dates et des heures.
- Apprendre comment utiliser les objets
datetime
etdate
en Python. - Etre capable à utiliser une fonction de formatage pour formater l’heure et la date en Python.
-
Présentation
- Le module
datetime
fournit des classes permettant de manipuler les dates et les heures de manière simple. datetime.now
renvoie la date et l’heure locales en cours. Si l’argument optionnel tz est None ou non spécifié, c’est comme aujourd’hui ().date.strftime
renvoie une chaîne représentant la date, contrôlée par une chaîne de format explicite.- Il existe deux types d’objets de date et d’heure: «
naïfs
» et «conscients
». - Si un objet d’heure ou de date est naïf, il ne contient pas d’informations permettant de se comparer ou de se localiser par rapport à d’autres objets de date ou d’heure.
- Un objet conscient, d’autre part, possède la connaissance du fuseau horaire auquel il appartient ou des informations d’heure d’été. De cette façon, il peut se localiser par rapport à d’autres objets conscients.
-
Types disponibles
-
class datetime.date
- Une date naïve idéalisée, en supposant que le calendrier Grégorien actuel a toujours existé et qu’il existera toujours. Attributs : année , mois et jour .
-
class datetime.time
- Un temps idéalisé, indépendant d’une date particulière, en supposant qu’une journée est composée d’exactement 24*60*60 secondes (il n’y a pas ici de notion de « seconde bissextile »). Attributs : hour, minute, second, microsecond et tzinfo.
-
class datetime.datetime
- Une combinaison d’une date et d’une heure. Attributs : year, month, day, hour, minute, second, microsecond, et tzinfo.
-
class datetime.timedelta
- Une durée qui exprime la différence entre deux instances de date, time ou datetime en microsecondes.
-
class datetime.tzinfo
- Une classe de base abstraite pour les objets portants des informations sur les fuseaux horaires. Ceux-ci sont utilisés par les classes datetime et time pour donner une notion personnalisable d’ajustement d’horaire (par exemple la prise en compte d’un fuseau horaire et/ou de l’heure d’été).
-
class datetime.timezone
- Une classe qui implémente la classe de base abstraite tzinfo en tant qu’offset fixe par rapport au temps UTC.
-
Les codes de formatage des dates dans le fuseau horaire américain
- L’exemple de formatage est : dimanche 05/05/2019 17:43:33
- Pour afficher les dates en français importer le module «
locale
» et appeler la constante «LC_TIME
« . - Cette constante affecte la fonction : «
time.strftime
« . -
Comment utiliser les classes
Date
etDateTime
-
La classe
date
- Avant d’exécuter le code pour
datetime
, il est important d’importer les modules dedate
et d’heure
-
from datetime import date, time, datetime
- Créer une instance de l’objet date.
-
# 2- Créer une instance de l'objet date. aujourdhui=date.today()
- Afficher la date d’aujourd’hui avec la fonction
date.today
-
# 3- Afficher la date d'aujourd'hui print("Aujourd'hui nous somme le : ",aujourdhui)
- La fonction
date.today
a plusieurs propriétés qui lui sont associées. Nous pouvons imprimer individuellement jour / mois / année et bien d’autres choses - La fonction
date.today()
donne également le numéro du jour de la semaine, 0 pour lundi et 6 pour dimanche. -
La classe
datetime
- Avant d’exécuter le code pour
datetime
, il est important d’importer les modules dedate
et d’heure
-
from datetime import date, time, datetime
- Comme les objets de date, l’utilisation des objets «
DATETIME
» en Python, donne la date avec l’heure enheures
,minutes
,secondes
etmillisecondes
. - Afficher uniquement l’heure actuelle sans la date avec Python
- Nous avions importé la classe de temps. Nous lui attribuerons la valeur actuelle du temps en utilisant
datetime.now ()
- Nous attribuons la valeur de l’heure courante à la variable heure.
-
Applications
- Utiliser les fonctions Python pour afficher le jour actuel en toute lettre
- Utiliser les fonctions Python pour afficher le mois en cours en toute lettre
import datetime
now = datetime.datetime.now()
print ("La date courante est : ")
print (now.strftime("%H:%M:%S %d/%m/%Y "))
"""Sortie"""
La date courante est :
09:07:18 05/05/2019
symbole | Sens | Exemple |
---|---|---|
%a |
Nom abrégé du jour de la semaine | 'Wed' |
%A |
Nom complet en semaine | 'Wednesday' |
%w |
Numéro de semaine – 0 (dimanche) à 6 (samedi) | '0' |
%d |
Jour du mois (zéro capitonné) | '5' |
%b |
Nom abrégé du mois | 'mai' |
%B |
Nom du mois complet | 'mai' |
%m |
Mois de l’année | '01' |
%y |
Année sans siècle | '19' |
%Y |
Année avec siècle | '2019' |
%H |
Heure à partir de 24 heures | '17' |
%I |
Heure à partir de 12 heures | '05' |
%p |
MATIN APRÈS-MIDI | 'PM' |
%M |
Minutes | '43' |
%S |
Secondes | '33' |
%f |
Microsecondes | '000000' |
%z |
Décalage UTC pour les objets sensibles au fuseau horaire | '-0500' |
%Z |
Nom du fuseau horaire | 'EST' |
%j |
Jour de l’année | '125' |
%W |
Semaine de l’année | '17' |
%c |
Représentation de la date et de l’heure pour les paramètres régionaux actuels | 'Mon mai 17 17:00:00 2019' |
%x |
Date de représentation pour les paramètres régionaux actuels | '05/17/19' |
%X |
Représentation de l’heure pour les paramètres régionaux actuels | '17:43:33' |
%% |
Un % caractère littéral |
'%' |
import locale
locale.setlocale(locale.LC_TIME,'')
import time
print time.strftime('%A %d/%m/%Y %H:%M:%S')
"""Affiche
dimanche 05/05/2019 17:43:33 """
# 3-1- Afficher le jour de la date d'aujourd'hui
print("Aujourd'hui c'est : ",aujourdhui.day)
# 3-1- Afficher le mois en cours
print("Le mois courant c'est : ",aujourdhui.month)
# 3-1- Afficher l'année en cours
print("L'année courant c'est : ",aujourdhui.year)
# 3-2- Afficher le numéro de jour de la semaine
print("Le numéro numéro de jour de la semaine : ",aujourdhui.weekday())
# 2- Créer une instance de l'objet date.
aujourdhui=datetime.now()
# 3- Afficher la date d'aujourd'hui
print("Aujourd'hui nous somme le : ",aujourdhui)
# ce qui affiche:.....2020-08-19 10:12:38.392542
# 4- Afficher l'heure actuelle
heure=datetime.time(datetime.now())
print("Il est : ",heure)
# ce qui affiche:.....10:12:38.392542
La fonction
date.weekday()
renvoie le jour de la semaine sous forme de nombre entier, où lundi vaut 0 et dimanche vaut 6.
# 1- importer les modules de date, time, datetime
from datetime import date, time, datetime
def application():
#Afficher le jour actuelle en toute lettre
aujourdhui=datetime.now()
leJour = date.weekday(aujourdhui)
lesJours = ['Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi', 'Dimanche']
print("Aujourd'hui c'est le jour numéro : %d "% leJour)
print("Aujourd'hui c'est le : ",lesJours[leJour])
if __name__ == "__main__":
application()
""" Ce qui affiche:
Aujourd'hui c'est le jour numéro : 2
Aujourd'hui c'est le : Mercredi
"""
La fonction
datetime.now().month()
renvoie le mois de l’année sous forme de nombre entier, où Janvier vaut 1 et décembre vaut 12.
# 1- importer les modules de date, time, datetime
from datetime import date, time, datetime
def application():
#Afficher le mois actuel en toute lettre
aujourdhui=datetime.now()
leMois = aujourdhui.month
lesMois = ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin',
'Juillet', 'Août',
'Septembre', 'Octobre', 'Novembre', 'Décembre']
print("Le mois courant est numéro : %d "% leMois)
print("Le mois courant est : ",lesMois[leMois-1])
if __name__ == "__main__":
application()
""" Ce qui affiche:
Le mois courant est numéro : 8
Le mois courant est : Août
"""