Section courante

A propos

Section administrative du site

 Langage  Installation  Elément  Tutoriel  Programmation  API  Bibliothèque  SDK  Cadre d'application  Gabarit  Boite à outils  Projet  Variante  IDE  Annexe  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Installation de Python
Installation de paquets Python
GTK+ 3 (avec Python 2 ou 3)
Introduction
Les remarques
Les opérateurs
Les instructions conditionnelles
Les instructions de boucles
Les instructions d'exceptions
Référence des mots réservés
Définition de procédures et de fonctions
Référence de procédures et fonctions
Référence des modules
Définition de classes
Référence des classes
Référence de exceptions
base64
cmath
ConfigParser
math
sys
win32api
Les premiers pas
Types et objets
Variables et types de données simples
Opérateurs et expressions
Date et heure
L'écosystème SciPy
Bonjour
Biochimie
Finance
Géographie
Géométrie
Gouvernement
Mathématique
Médicale
Météorologie
Océanographie
Sport
Système d'exploitation
Temps
Trigonométrie
Validation
Calcul du calcium corrigé
IPaymt/Interet
NPer
PPaymt/Principal
Distance en Km entre deux longitudes et latitudes
Aire d'un cercle
Aire d'une surface de prisme rectangulaire
Aire d'un triangle
Distance entre deux points
Taxe de vente canadienne
Exp
Factoriel
Fibonacci
Nombre premier
Sqrt
Triangle Pascal
Hauteur utérine
Unité de mesure
Fréquence des vagues
Hockey
Version de Windows
Année bissextile
Date de la Pâque
FirstDayOfMonth
Atn/ATan/ArcTan/ArcTangente
Courriel
Google BigQuery
CryptoAuthLib
CuPy
Geoplotlib
matplotlib
Modin
NumPy
Pandas
Polars
Scikit-Learn
Seaborn
SentencePiece
spaCy
SymPy
TensorFlow
Theano
Azure SDK for Python
Bot Framework SDK
Boto3
Ocean SDK
Sentry Python SDK
Anvil
Aquarium
Bottle
Celery
CherryPy
Django
Falcon Framework
Flask
Hyperledger Indy
Keras
Pyramid
PyTorch
Sanic
Zope
Cheetah
Mustache
ONNX
OpenMM
SQLAlchemy
RASA
IronPython (Python en .NET)
Jython (Python en Java)
PyPy (Compilateur Python)
Komodo IDE
NetBeans
PyCharm
Visual Studio
Téléchargement
Préface
Notes légal
Dictionnaire
Recherche

Date et heure

Le langage de programmation Python a un module nommé datetime pour travailler avec les dates et les heures.

Demander la date et l'heure actuelles

Voici un exemple d'un programme en Python 3 permettant d'afficher la date et l'heure actuelle :

  1. import datetime
  2.  
  3. objet_datetime = datetime.datetime.now()
  4. print(objet_datetime)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

2021-02-06 10:27:31.913015

Dans ce programme, nous avons importé le module datetime à l'aide de l'instruction import datetime. L'une des classes définies dans le module datetime est la classe datetime. Nous avons ensuite utilisé la méthode now() pour créer un objet datetime contenant la date et l'heure locales actuelles.

Demande la date actuelle

Si on veut simplement demander la date sans leur en Python 3, on utilisera un programme ressemblant à ceci :

  1. import datetime
  2.  
  3. objet_date = datetime.date.today()
  4. print(objet_date)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

2021-02-06

Dans ce programme, nous avons utilisé la méthode today() définie dans la classe date pour obtenir un objet date contenant la date locale actuelle.

L'intérieur de datetime

Vous pouvez utiliser la fonction dir() pour obtenir une liste contenant tous les attributs d'un module :

  1. import datetime
  2.  
  3. print(dir(datetime))

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

['MAXYEAR', 'MINYEAR', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'date', 'datetime', 'datetime_CAPI', 'sys', 'time', 'timedelta', 'timezone', 'tzinfo']

Les classes couramment utilisées dans le module datetime sont :

Classe datetime.date

Vous pouvez instancier des objets de date à partir de la classe de date. Un objet date représente une date (année, mois et jour).

Objet date pour représenter une date

L'exemple suivant permet de construire une date à partir d'un objet date :

  1. import datetime
  2.  
  3. madate = datetime.date(2021, 2, 6)
  4. print(madate)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

2021-02-06

Si vous vous demandez, date() dans l'exemple ci-dessus est un constructeur de la classe date. Le constructeur prend trois paramètres : année, mois et jour. La variable madate est un objet date.

Nous ne pouvons importer la classe de date qu'à partir du module datetime. Voici comment :

  1. from datetime import date
  2.  
  3. madate = date(2021, 2, 6)
  4. print(madate)

Demande la date actuelle

Vous pouvez créer un objet de date contenant la date actuelle en utilisant une méthode de classe nommée today(). Voici comment :

  1. from datetime import date
  2.  
  3. aujourdhui = date.today()
  4.  
  5. print("Date actuelle =", aujourdhui)

Demande la date à partir d'un horodatage

Nous pouvons également créer des objets de date à partir d'un horodatage. Un horodatage Unix est le nombre de secondes entre une date particulière et le 1er janvier 1970 à UTC. Vous pouvez convertir un horodatage en date à l'aide de la méthode fromtimestamp() :

  1. from datetime import date
  2.  
  3. horodatage = date.fromtimestamp(1612629066)
  4. print("Date = ", horodatage)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

Date = 2021-02-06

Afficher l'année, le mois et le jour d'aujourd'hui

Nous pouvons facilement obtenir l'année, le mois, le jour, le jour de la semaine,... à partir de l'objet de date. Voici comment :

  1. from datetime import date
  2.  
  3. aujourdhui = date.today() 
  4.  
  5. print("Année actuelle :", aujourdhui.year)
  6. print("Mois actuelle :", aujourdhui.month)
  7. print("Jour actuelle :", aujourdhui.day)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

Année actuelle : 2021
Mois actuelle : 2
Jour actuelle : 6

datetime.time

Un objet time instancié à partir de la classe time contient une représentation de l'heure locale.

Objet time pour représenter l'heure

Voici des appels de la classe time avec un nombre différents de paramètres :

  1. from datetime import time
  2.  
  3. # time(heure = 0, minute = 0, seconde = 0)
  4. a = time()
  5. print("a =", a)
  6.  
  7. # time(heurre, minute, seconde)
  8. b = time(10, 37, 57)
  9. print("b =", b)
  10.  
  11. # time(heure, minute, seconde)
  12. c = time(hour = 10, minute = 37, second = 57)
  13. print("c =", c)
  14.  
  15. # time(heure, minute, seconde, microseconde)
  16. d = time(10, 37, 57, 123456)
  17. print("d =", d)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

a = 00:00:00
b = 10:37:57
c = 10:37:57
d = 10:37:57.123456

Afficher l'heure, les minutes, les secondes et les microsecondes

Une fois que vous avez créé un objet de temps, vous pouvez facilement afficher ses attributs tels que l'heure, les minutes,... :

  1. from datetime import time
  2.  
  3. heure = time(10, 37, 57)
  4.  
  5. print("Heure = ", heure.hour)
  6. print("Minute = ", heure.minute)
  7. print("Seconde = ", heure.second)
  8. print("Microseconde = ", heure.microsecond)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

Heure = 10
Minute = 37
Seconde = 57
Microseconde = 0

Notez que nous n'avons pas passé de paramètre en microseconde. Par conséquent, sa valeur par défaut 0 est affichée.

datetime.datetime

Le module datetime a une classe nommée datetime pouvant contenir des informations sur les objets de date et d'heure.

Objet datetime de Python

L'exemple montre l'utilisation de la classe datetime avec ou sans heure :

  1. from datetime import datetime
  2.  
  3. #datetime(annee, mois, jour)
  4. dateseulement = datetime(2021, 2, 6)
  5. print(dateseulement)
  6.  
  7. # datetime(annee, mois, jour, heure, minute, seconde, microseconde)
  8. dateetheure = datetime(2021, 2, 6, 23, 55, 59, 342380)
  9. print(dateetheure)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

2021-02-06 00:00:00
2021-02-06 23:55:59.342380

Les trois premiers paramètres année, mois et jour dans le constructeur datetime() sont obligatoires.

Afficher l'année, le mois, l'heure, les minutes et l'horodatage

L'exemple suivant permet d'afficher l'année, le mois, l'heure, les minutes et l'horodatage :

  1. from datetime import datetime
  2.  
  3. temps = datetime(2021, 2, 6, 23, 55, 59, 342380)
  4. print("Année =", temps.year)
  5. print("Mois =", temps.month)
  6. print("Heure =", temps.hour)
  7. print("Minute =", temps.minute)
  8. print("Horodatage =", temps.timestamp())

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

Année = 2021
Mois = 2
Heure = 23
Minute = 55
Horodatage = 1612673759.34238

datetime.timedelta

Un objet timedelta représente la différence entre deux dates ou heures. L'exemple suivant permet d'afficher la différence entre deux objets timedelta :

  1. from datetime import timedelta
  2.  
  3. t1 = timedelta(weeks = 2, days = 5, hours = 1, seconds = 33)
  4. t2 = timedelta(days = 4, hours = 11, minutes = 4, seconds = 54)
  5. t3 = t1 - t2
  6.  
  7. print("t3 = ", t3)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

t3 = 14 days, 13:55:39

Dans l'exemple précédent, nous avons créé deux objets timedelta nommé t1 et t2, et leur différence est affichée à l'écran.

L'exemple suivant permet d'afficher un objet timedelta négatif :

  1. from datetime import timedelta
  2.  
  3. t1 = timedelta(seconds = 37)
  4. t2 = timedelta(seconds = 57)
  5. t3 = t1 - t2
  6.  
  7. print("t3 = ", t3)
  8. print("t3 = ", abs(t3))

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

t3 = -1 day, 23:59:40
t3 = 0:00:20

Durée en secondes

Vous pouvez obtenir le nombre total de secondes dans un objet timedelta en utilisant la méthode total_seconds().

  1. from datetime import timedelta
  2.  
  3. t = timedelta(days = 6, hours = 2, seconds = 37, microseconds = 233423)
  4. print("Secondes total = ", t.total_seconds())

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

Secondes total = 525637.233423

Vous pouvez également trouver la somme de deux dates et heures en utilisant l'opérateur +. En outre, vous pouvez multiplier et diviser un objet timedelta par des entiers et des nombres à virgules flottantes (nombre réel).

datetime au format Python

La façon dont la date et l'heure sont représentées peut être différente selon les endroits, les organisations,... Il est plus courant d'utiliser mm/jj/aaaa aux États-Unis, alors que jj/mm/aaaa est plus courant au Royaume-Uni. Le Python a les méthodes strftime() et strptime() pour gérer ces situations.

strftime() de Python : Objet datetime en chaîne de caractères

La méthode strftime() est définie sous les classes date, datetime et time. La méthode crée une chaîne de caractères formatée à partir d'un objet date, datetime ou time donné.

  1. from datetime import datetime
  2.  
  3. # date et heure actuelle
  4. maintenant = datetime.now()
  5.  
  6. t = maintenant.strftime("%H:%M:%S")
  7. print("Heure :", t)
  8.  
  9. s1 = maintenant.strftime("%m/%d/%Y, %H:%M:%S")
  10. # Format mm/dd/AA H:M:S
  11. print("s1 : ", s1)
  12.  
  13. s2 = maintenant.strftime("%d/%m/%Y, %H:%M:%S")
  14. # Format dd/mm/AA H:M:S
  15. print("s2 : ", s2)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

Heure : 15:21:37
s1 : 02/06/2021, 15:21:37
s2 : 06/02/2021, 15:21:37

Dans l'exemple précédent, %Y, %m, %d, %H ... sont des codes de format. La méthode strftime() prend un ou plusieurs codes de format et renvoie une chaîne de caractères formatée basée sur celui-ci. Dans le programme ci-dessus, t, s1 et s2 sont des chaînes de caractères dont voici la signification :

Code Description Intervalle
%Y Année [0001, ..., 2018, 2019, 2020, 2021,..., 9999]
%m Mois [01, 02, ..., 11, 12]
%d Jour [01, 02, ..., 30, 31]
%H Heure [00, 01, ..., 22, 23]
%M Minute [00, 01, ..., 58, 59]
%S Seconde [00, 01, ..., 58, 59]

strptime() de Python - chaîne à caractères datetime

La méthode strptime() crée un objet datetime à partir d'une chaîne de caractères donnée (représentant la date et l'heure).

  1. from datetime import datetime
  2.  
  3. chaine_date = "6 February, 2021"
  4. print("chaine_date =", chaine_date)
  5.  
  6. objet_date = datetime.strptime(chaine_date, "%d %B, %Y")
  7. print("objet_date =", objet_date)

Lorsque vous exécutez le programme, la sortie retournera quelque chose comme ceci :

chaine_date = 6 February, 2021
objet_date = 2021-02-06 00:00:00

La méthode strptime() prend deux paramètres :

Par ailleurs, les codes de format %d, %B et %Y sont utilisés respectivement pour le jour, le mois (nom complet) et l'année.

Gestion du fuseau horaire en Python

Supposons que vous travaillez sur un projet et que vous deviez afficher la date et l'heure en fonction de leur fuseau horaire. Plutôt que d'essayer de gérer vous-même le fuseau horaire, il existe le module tiers pytz de Stuart Bishop.



PARTAGER CETTE PAGE SUR
Dernière mise à jour : Samedi, le 6 février 2021