Date et heure actuelles dans le didacticiel en profondeur Python

Date et heure actuelles dans le didacticiel en profondeur Python

Obtenir la date et l'heure actuelles est une tâche courante dans la programmation Python. Il existe plusieurs façons de le faire, selon vos besoins et les bibliothèques dont vous disposez. Dans cet article, nous explorerons certaines des méthodes les plus courantes pour obtenir la date et l'heure actuelles à Python, notamment en utilisant le module DateTime intégré, le module d'heure et le module DateUtil. Nous discuterons également de la façon de formater les valeurs de date et de temps en tant que chaînes, et comment convertir entre les fuseaux horaires. Que vous travailliez avec des horodatages, des tâches de planification ou que vous souhaitiez simplement afficher la date et l'heure actuelles de votre programme Python, cet article vous fournira les outils dont vous avez besoin.

Obtenez la date et l'heure actuelles à Python

Nous pouvons utiliser le 'DateTime', 'temps', et 'dateutil' modules en python pour obtenir la date et l'heure.

  1. Utilisation du module «DateTime»
  2. L'une des façons les plus populaires d'obtenir la date et l'heure actuelles de Python est d'utiliser le module DateTime. Ce module fournit des cours pour travailler avec les dates, les heures et les horodatages.

    • Pour obtenir la date et l'heure actuelles, vous pouvez utiliser le DateTime.fonction maintenant (), qui renvoie un objet DateTime représentant la date et l'heure actuelles dans le fuseau horaire local. importer datetime current_datetime = datetime.DateTime.maintenant () print (current_datetime)
      1234importer datetime current_datetime = datetime.DateTime.maintenant () print (current_datetime)

      La datetime.La fonction maintenant () renvoie un objet DateTime avec la date et l'heure actuelles dans le fuseau horaire local. Le fuseau horaire est déterminé par le système d'exploitation sur lequel l'interprète Python fonctionne.

    • Vous pouvez également spécifier un fuseau horaire différent en passant un argument tzinfo au DateTime.Fonction maintenant (). Par exemple, pour obtenir la date et l'heure actuelles dans le fuseau horaire UTC, vous pouvez utiliser le DateTime.fonction utcnow (). Importer DateTime Current_DateTime_Utc = DateTime.DateTime.utcnow () print (current_datetime_utc)
      1234Importer DateTime Current_DateTime_Utc = DateTime.DateTime.utcnow () print (current_datetime_utc)

    • Vous pouvez également créer un objet DateTime pour une date et une heure spécifiques en utilisant le constructeur DateTime (). Ce constructeur prend l'année, le mois, le jour, l'heure, la minute, le deuxième et la microseconde comme arguments. Importer DateTime spécifique_datetime = DateTime.DateTime (2022, 12, 25, 12, 0, 0) Imprimer (Spécifique_dateTime)
      1234Importer DateTime spécifique_datetime = DateTime.DateTime (2022, 12, 25, 12, 0, 0) Imprimer (Spécifique_dateTime)

  3. Utilisation du module «Time»
  4. Une autre façon d'obtenir la date et l'heure actuelles dans Python est d'utiliser le module Time. Ce module offre des fonctions pour travailler avec les valeurs de temps.

    • Pour obtenir la date et l'heure actuelles, vous pouvez utiliser l'heure.Fonction gmtime (), qui renvoie une structure temporelle représentant la date et l'heure actuelles dans le fuseau horaire UTC. Importer l'heure courante_time = heure.gmtime () print (current_time)
      1234Importer l'heure courante_time = heure.gmtime () print (current_time)

    • Vous pouvez également utiliser le temps.Fonction locale () pour obtenir la date et l'heure actuelles dans le fuseau horaire local. Importer du temps courant_local_time = heure.localtime () print (current_local_time)
      1234Importer du temps courant_local_time = heure.localtime () print (current_local_time)

  5. Utilisation du module «DateUtil»
  6. Une autre option pour obtenir la date et l'heure actuelles dans Python est d'utiliser le module DateUtil. Ce module offre des fonctions pour travailler avec les dates et les heures dans une variété de formats et de fuseaux horaires.

    • Pour obtenir la date et l'heure actuelles, vous pouvez utiliser le DateUtil.analyseur.Fonction parse (), qui analyse une représentation de chaîne d'une date et d'une heure et renvoie un objet DateTime. Pour obtenir la date et l'heure actuelles, vous pouvez passer la chaîne «maintenant» à cette fonction. Importer Dateutil.analyser current_datetime = dateUtil.analyseur.Parse ("Now") imprimer (current_datetime)
      1234Importer Dateutil.analyser current_datetime = dateUtil.analyseur.Parse ("Now") imprimer (current_datetime)
    • Pour obtenir la date et l'heure actuelles dans un fuseau horaire spécifique en utilisant le module DateUtil, vous pouvez utiliser le DateUtil.tz.Fonction getTZ () pour obtenir un objet tzinfo pour ce fuseau horaire, puis passer cet objet comme argument tz à la dateutil.analyseur.Fonction Parse ().

      Par exemple, pour obtenir la date et l'heure actuelles dans le fuseau horaire de l'heure standard du Pacifique (PST), vous pouvez utiliser le code suivant:

      Importer Dateutil.Parier Importation Dateutil.tz pst_tz = dateUtil.tz.gettz ("pst") current_datetime_pst = dateUtil.analyseur.Parse ("Now", TZ = PST_TZ) PRINT (current_datetime_pst)
      123456Importer Dateutil.parserimpport dateutil.tz pst_tz = dateUtil.tz.gettz ("pst") current_datetime_pst = dateUtil.analyseur.Parse ("Now", TZ = PST_TZ) PRINT (current_datetime_pst)

    • Vous pouvez également utiliser le dateUtil.tz.Fonction tzoffset () Pour créer un objet tzinfo pour un fuseau horaire avec un décalage fixe de UTC. Par exemple, pour obtenir la date et l'heure actuelles dans le fuseau horaire de l'heure de l'Est (EST), qui est à 5 heures de retard UTC, vous pouvez utiliser le code suivant: Importer DateUtil.Parier Importation Dateutil.tz est_tz = dateUtil.tz.tzoffset ("est", -5 * 60 * 60) current_datetime_est = dateUtil.analyseur.Parse ("maintenant", tz = est_tz) imprimer (current_datetime_est)
      123456Importer Dateutil.parserimpport dateutil.tz est_tz = dateUtil.tz.tzoffset ("est", -5 * 60 * 60) current_datetime_est = dateUtil.analyseur.Parse ("maintenant", tz = est_tz) imprimer (current_datetime_est)

Formatage de la date et de l'heure à Python

Pour formater la date et l'heure d'une manière spécifique, vous pouvez utiliser la méthode strftime () de l'objet DateTime, qui prend une chaîne de format comme argument. La chaîne de format spécifie comment les valeurs de date et d'heure doivent être formatées.

  • Par exemple, pour obtenir la date actuelle en tant que chaîne au format Yyyy-mm-dd, vous pouvez utiliser le% y-% m-% d chaîne de format: importation datetime current_datetime = datetime.DateTime.maintenant () current_date = current_datetime.strftime ("% y-% m-% d") imprimer (current_date)
    12345importer datetime current_datetime = datetime.DateTime.maintenant () current_date = current_datetime.strftime ("% y-% m-% d") imprimer (current_date)

  • Pour obtenir l'heure actuelle en tant que chaîne au format HH: MM: SS, vous pouvez utiliser le% H:% M:% S Format String: Importer DateTime Current_DateTime = DateTime.DateTime.maintenant () current_time = current_datetime.strftime ("% h:% m:% s") imprimer (current_time)
    12345importer datetime current_datetime = datetime.DateTime.maintenant () current_time = current_datetime.strftime ("% h:% m:% s") imprimer (current_time)

  • Pour obtenir la date et l'heure actuelles en tant que chaîne au format Yyyy-mm-dd HH: MM: SS, vous pouvez combiner le% y-% m-% d et% h:% m:% s cordes de format: importation datetime current_datetime = datetime.DateTime.maintenant () current_datetime_string = current_datetime.strftime ("% y-% m-% d% h:% m:% s") imprimer (current_datetime_string)
    12345importer datetime current_datetime = datetime.DateTime.maintenant () current_datetime_string = current_datetime.strftime ("% y-% m-% d% h:% m:% s") imprimer (current_datetime_string)

  • Il existe de nombreuses autres chaînes de format disponibles, qui vous permettent de personnaliser la sortie de diverses manières. Par exemple, vous pouvez utiliser la chaîne de format% I pour obtenir l'heure dans un format 12 heures avec un zéro leader pour les heures à un chiffre, et la chaîne de format% P pour obtenir l'indicateur AM / PM. importer datetime current_datetime = datetime.DateTime.maintenant () current_time_12h = current_datetime.strftime ("% i:% m:% s% p") imprimer (current_time_12h)
    12345importer datetime current_datetime = datetime.DateTime.maintenant () current_time_12h = current_datetime.strftime ("% i:% m:% s% p") imprimer (current_time_12h)

Vous pouvez trouver une liste complète des chaînes de format disponibles dans la documentation de la méthode strftime (): https: // docs.python.org / 3 / bibliothèque / datetime.html # strftime-strptime-behavior

Conversion entre les fuseaux horaires à Python

Pour convertir un objet DateTime d'un refonte d'un autre en utilisant le module DateUtil, vous pouvez utiliser le DateUtil.tz.Fonction getTZ () pour obtenir un objet tzinfo pour le fuseau horaire cible, puis passer cet objet comme argument tz à la dateutil.analyseur.Fonction Parse ().

  • Par exemple, pour convertir un objet DateTime du fuseau horaire du Pacific Standard Time (PST) au fuseau horaire de l'Est de l'Est (EST), vous pouvez utiliser le code suivant: Importer DateUtil.Parier Importation Dateutil.tz pst_tz = dateUtil.tz.gettz ("pst") est_tz = dateUtil.tz.gettz ("est") pst_datetime = dateUtil.analyseur.Parse ("2022-12-25 12:00:00", tz = pst_tz) est_datetime = pst_datetime.AstimeZone (EST_TZ) Print (EST_DATETime)
    123456789Importer Dateutil.parserimpport dateutil.tz pst_tz = dateUtil.tz.gettz ("pst") est_tz = dateUtil.tz.gettz ("est") pst_datetime = dateUtil.analyseur.Parse ("2022-12-25 12:00:00", tz = pst_tz) est_datetime = pst_datetime.AstimeZone (EST_TZ) Print (EST_DATETime)

  • Vous pouvez également utiliser le dateUtil.tz.Fonction tzoffset () Pour créer un objet tzinfo pour un fuseau horaire avec un décalage fixe de UTC. Par exemple, pour convertir un objet DateTime du fuseau horaire UTC au fuseau horaire de l'heure de l'Est (EST), qui est à 5 heures derrière UTC, vous pouvez utiliser le code suivant: Importation DateUtil.Parier Importation Dateutil.tz utc_tz = dateUtil.tz.tzoffset ("utc", 0) est_tz = dateUtil.tz.tzoffset ("est", -5 * 60 * 60) utc_datetime = dateUtil.analyseur.Parse ("2022-12-25 12:00:00", tz = utc_tz) est_datetime = utc_datetime.AstimeZone (EST_TZ) Print (EST_DATETime)
    123456789Importer Dateutil.parserimpport dateutil.tz utc_tz = dateUtil.tz.tzoffset ("utc", 0) est_tz = dateUtil.tz.tzoffset ("est", -5 * 60 * 60) utc_datetime = dateUtil.analyseur.Parse ("2022-12-25 12:00:00", tz = utc_tz) est_datetime = utc_datetime.AstimeZone (EST_TZ) Print (EST_DATETime)

  • Notez que la méthode astimeZone () ne fonctionne que si l'objet DateTime a un attribut tzinfo. Si l'objet DateTime n'a pas d'attribut tzinfo, il est supposé être dans le fuseau horaire local. Dans ce cas, vous pouvez utiliser le DateUtil.analyseur.Fonction parse () Pour créer un nouvel objet DateTime avec un fuseau horaire spécifique, puis utilisez la méthode astimeZone () pour la convertir en un autre fuseau horaire. Importer Dateutil.Parier Importation Dateutil.tz local_tz = dateUtil.tz.gettz () est_tz = dateUtil.tz.gettz ("est") local_datetime = dateTime.DateTime.maintenant () est_datetime = dateUtil.analyseur.Parse (local_datetime.isoFormat (), tz = local_tz).AstimeZone (EST_TZ) Print (EST_DATETime)
    123456789Importer Dateutil.parserimpport dateutil.tz local_tz = dateUtil.tz.gettz () est_tz = dateUtil.tz.gettz ("est") local_datetime = dateTime.DateTime.maintenant () est_datetime = dateUtil.analyseur.Parse (local_datetime.isoFormat (), tz = local_tz).AstimeZone (EST_TZ) Print (EST_DATETime)

J'espère que ces exemples vous ont aidé à comprendre comment obtenir la date et l'heure actuelles à Python, et comment convertir entre les fuseaux horaires.

Conclusion

En résumé, le module DateTime est un outil pratique et puissant pour travailler avec les dates, les heures et les horodatages en Python. Vous pouvez utiliser le DateTime.fonction maintenant () pour obtenir la date et l'heure actuelles dans le fuseau horaire local, ou le DateTime.Fonction UTCNow () pour obtenir la date et l'heure actuelles dans le fuseau horaire UTC. Vous pouvez également utiliser le constructeur DateTime () pour créer un objet DateTime pour une date et une heure spécifiques.

Le module de temps offre des fonctions pour travailler avec des valeurs de temps, telles que les fonctions gmtime () et localTime (), qui renvoient une structure temporelle représentant respectivement la date et l'heure actuelles de l'UTC et des fuseaux horaires locaux,.

Le module DateUtil fournit des outils supplémentaires pour travailler avec les dates et les heures, telles que la possibilité d'analyser les chaînes de date et d'heure et de convertir entre les fuseaux horaires.

Une fois que vous avez un objet DateTime, vous pouvez utiliser la méthode Strftime () pour formater les valeurs de date et de temps comme des chaînes, et la méthode astimeZone () pour convertir l'objet DateTime en un autre fuseau horaire.