Date et heure Python
Dates Python
Une date en Python n'est pas un type de données en soi, mais nous pouvons importer un module nommé datetime
pour travailler avec des dates en tant qu'objets de date.
Exemple
Importez le module datetime et affichez la date actuelle :
import datetime
x = datetime.datetime.now()
print(x)
Date de sortie
Lorsque nous exécutons le code de l'exemple ci-dessus, le résultat sera :
2022-01-29 15:42:33.065896
La date contient l'année, le mois, le jour, l'heure, la minute, la seconde et la microseconde.
Le datetime
module dispose de nombreuses méthodes pour renvoyer des informations sur l'objet date.
Voici quelques exemples, vous en apprendrez plus à leur sujet plus loin dans ce chapitre :
Exemple
Renvoie l'année et le nom du jour de la semaine :
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
Création d'objets de date
Pour créer une date, on peut utiliser la datetime()
classe (constructeur) du
datetime
module.
La datetime()
classe nécessite trois paramètres pour créer une date : année, mois, jour.
Exemple
Créez un objet date :
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
La datetime()
classe prend également des paramètres pour l'heure et le fuseau horaire (heure, minute, seconde, microseconde, tzone), mais ils sont facultatifs et ont une valeur par défaut de 0
, ( None
pour le fuseau horaire).
La méthode strftime()
L' datetime
objet a une méthode pour formater les objets de date en chaînes lisibles.
La méthode est appelée strftime()
, et prend un paramètre,
format
, pour spécifier le format de la chaîne renvoyée :
Exemple
Afficher le nom du mois :
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
Une référence de tous les codes de format légal :
Directive | Description | Example | Try it |
---|---|---|---|
%a | Weekday, short version | Wed | |
%A | Weekday, full version | Wednesday | |
%w | Weekday as a number 0-6, 0 is Sunday | 3 | |
%d | Day of month 01-31 | 31 | |
%b | Month name, short version | Dec | |
%B | Month name, full version | December | |
%m | Month as a number 01-12 | 12 | |
%y | Year, short version, without century | 18 | |
%Y | Year, full version | 2018 | |
%H | Hour 00-23 | 17 | |
%I | Hour 00-12 | 05 | |
%p | AM/PM | PM | |
%M | Minute 00-59 | 41 | |
%S | Second 00-59 | 08 | |
%f | Microsecond 000000-999999 | 548513 | |
%z | UTC offset | +0100 | |
%Z | Timezone | CST | |
%j | Day number of year 001-366 | 365 | |
%U | Week number of year, Sunday as the first day of week, 00-53 | 52 | |
%W | Week number of year, Monday as the first day of week, 00-53 | 52 | |
%c | Local version of date and time | Mon Dec 31 17:41:00 2018 | |
%C | Century | 20 | |
%x | Local version of date | 12/31/18 | |
%X | Local version of time | 17:41:00 | |
%% | A % character | % | |
%G | ISO 8601 year | 2018 | |
%u | ISO 8601 weekday (1-7) | 1 | |
%V | ISO 8601 weeknumber (01-53) | 01 |