Python strftime () - datetime en chaîne

Dans cet article, vous apprendrez à convertir les objets date, heure et date / heure en sa chaîne équivalente (à l'aide d'exemples)

La strftime()méthode renvoie une chaîne représentant la date et l'heure à l'aide d'un objet date, heure ou date / heure.

Exemple 1: datetime en chaîne en utilisant strftime ()

Le programme ci-dessous convertit un datetimeobjet contenant la date et l'heure actuelles en différents formats de chaîne.

  from datetime import datetime now = datetime.now() # current date and time year = now.strftime("%Y") print("year:", year) month = now.strftime("%m") print("month:", month) day = now.strftime("%d") print("day:", day) time = now.strftime("%H:%M:%S") print("time:", time) date_time = now.strftime("%m/%d/%Y, %H:%M:%S") print("date and time:",date_time) 

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

 année: 2018 mois: 12 jour: 24 heure: 04:59:31 date et heure: 12/24/2018, 04:59:31 

Ici, année, jour, heure et date_heure sont des chaînes, alors que now est un datetimeobjet.

Comment fonctionne strftime ()?

Dans le programme ci - dessus, %Y, %m, %detc. sont des codes de format. La strftime()méthode prend un ou plusieurs codes de format comme argument et renvoie une chaîne formatée basée sur celui-ci.

  1. Nous avons importé la datetimeclasse du datetimemodule. C'est parce que l'objet de datetimeclasse peut accéder à la strftime()méthode.
  2. L' datetimeobjet contenant la date et l'heure actuelles est stocké dans la variable now.
  3. La strftime()méthode peut être utilisée pour créer des chaînes formatées.
  4. La chaîne que vous transmettez à la strftime()méthode peut contenir plusieurs codes de format.

Exemple 2: création d'une chaîne à partir d'un horodatage

  from datetime import datetime timestamp = 1528797322 date_time = datetime.fromtimestamp(timestamp) print("Date time object:", date_time) d = date_time.strftime("%m/%d/%Y, %H:%M:%S") print("Output 2:", d) d = date_time.strftime("%d %b, %Y") print("Output 3:", d) d = date_time.strftime("%d %B, %Y") print("Output 4:", d) d = date_time.strftime("%I%p") print("Output 5:", d) 

Lorsque vous exécutez le programme, la sortie sera:

 Date et heure de l'objet: 2018-06-12 09:55:22 Sortie 2: 06/12/2018, 09:55:22 Sortie 3:12 juin, 2018 Sortie 4:12 juin, 2018 Sortie 5: 09AM 

Liste des codes de format

Le tableau ci-dessous présente tous les codes que vous pouvez passer à la strftime()méthode.

Directif Sens Exemple
%a Nom abrégé du jour de la semaine. Dim, lun,…
%A Nom complet du jour de la semaine. Dimanche Lundi,…
%w Jour de la semaine sous forme de nombre décimal. 0, 1,…, 6
%d Jour du mois sous la forme d'un nombre décimal complété par des zéros. 01, 02,…, 31
%-d Jour du mois sous forme de nombre décimal. 1, 2,…, 30
%b Nom du mois abrégé. Janv, fév,…, déc
%B Nom complet du mois. Janvier février,…
%m Mois sous forme de nombre décimal complété par des zéros. 01, 02,…, 12
%-m Mois sous forme de nombre décimal. 1, 2,…, 12
%y Année sans siècle sous forme de nombre décimal complété par zéro. 00, 01,…, 99
%-y Année sans siècle sous forme de nombre décimal. 0, 1,…, 99
%Y Année avec le siècle comme nombre décimal. 2013, 2019 etc.
%H Heure (horloge sur 24 heures) sous forme de nombre décimal complété par zéro. 00, 01,…, 23
%-H Heure (horloge sur 24 heures) sous forme de nombre décimal. 0, 1,…, 23
%I Heure (horloge sur 12 heures) sous forme de nombre décimal complété par zéro. 01, 02,…, 12
%-I Heure (horloge 12 heures) sous forme de nombre décimal. 1, 2,… 12
%p AM ou PM des paramètres régionaux. MATIN APRÈS-MIDI
%M Minute sous forme de nombre décimal complété par des zéros. 00, 01,…, 59
%-M Minute sous forme de nombre décimal. 0, 1,…, 59
%S Second comme un nombre décimal complété par des zéros. 00, 01,…, 59
%-S Deuxième sous forme de nombre décimal. 0, 1,…, 59
%f Microseconde sous forme de nombre décimal, complété par zéro à gauche. 000000 - 999999
%z Décalage UTC sous la forme + HHMM ou -HHMM.
%Z Nom du fuseau horaire.
%j Jour de l'année sous forme de nombre décimal complété par des zéros. 001, 002,…, 366
%-j Jour de l'année sous forme de nombre décimal. 1, 2,…, 366
%U Numéro de semaine de l'année (dimanche comme premier jour de la semaine). Tous les jours d'une nouvelle année précédant le premier dimanche sont considérés comme faisant partie de la semaine 0. 00, 01,…, 53
%W Numéro de semaine de l'année (lundi comme premier jour de la semaine). Tous les jours d'une nouvelle année précédant le premier lundi sont considérés comme faisant partie de la semaine 0. 00, 01,…, 53
%c Représentation appropriée de la date et de l'heure. 30 sept. 07:06:05 2013
%x Représentation de date appropriée de la région. 30/09/13
%X Représentation temporelle appropriée des paramètres régionaux. 07:06:05
%% Un caractère littéral '%'. %

Exemple 3: date et heure appropriées pour les paramètres régionaux

  from datetime import datetime timestamp = 1528797322 date_time = datetime.fromtimestamp(timestamp) d = date_time.strftime("%c") print("Output 1:", d) d = date_time.strftime("%x") print("Output 2:", d) d = date_time.strftime("%X") print("Output 3:", d) 

Lorsque vous exécutez le programme, la sortie sera:

 Sortie 1: Mar 12 juin 09:55:22 2018 Sortie 2: 06/12/18 Sortie 3: 09:55:22 

Format des codes %c, %xet %Xsont utilisés pour la représentation de la date et l' heure appropriée de paramètres régionaux.

Nous vous recommandons également de vérifier Python strptime (). La strptime()méthode crée un datetimeobjet à partir d'une chaîne.

Articles intéressants...