Python DateHeure, HeureDelta, Strftime(Format) avec exemples

En Python, date, heure et dateheure les classes fournissent un certain nombre de fonctions pour gérer les dates, les heures et les intervalles de temps. La date et la datetime en Python sont les objets, donc lorsque vous les manipulez, vous manipulez en réalité des objets et non des chaînes ou des horodatages. Chaque fois que vous manipulez des dates ou des heures, vous devez importer la fonction datetime.

Les classes datetime en Python sont classées en 5 classes principales.

  • date – Manipuler uniquement la date (mois, jour, année)
  • time – Heure indépendante du jour (Heure, minute, seconde, microseconde)
  • datetime – Combinaison de l'heure et de la date (mois, jour, année, heure, seconde, microseconde)
  • fiabledelta— Une durée utilisée pour manipuler les dates
  • tzinfo — Une classe abstraite pour gérer les fuseaux horaires

Comment utiliser la classe Date et DateTime

Étape 1) Avant d'exécuter le code pour le format datetime en Python, il est important d'importer les modules datetime Python comme indiqué dans la capture d'écran ci-dessous.

Utiliser la classe Date et DateTime

Ces instructions d'importation sont des fonctionnalités prédéfinies dans la bibliothèque Python qui vous permettent de manipuler les dates et les heures, sans écrire de code.

Considérez ce qui suitwing points avant d'exécuter le code du format datetime Python

from datetime import date

Cette ligne indique à l'interpréteur Python d'importer la classe date du module datetime en Python. Nous n'écrivons pas le code de cette fonctionnalité de date, hélas, nous l'importons simplement pour notre usage

Étape 2) Ensuite, nous créons une instance de l'objet date.

Utiliser la classe Date et DateTime

Étape 3) Ensuite, nous imprimons la date et exécutons le code.

Utiliser la classe Date et DateTime

Le résultat est comme prévu.

Imprimer la date en utilisant date.today()

date.today La fonction a plusieurs propriétés qui lui sont associées. Nous pouvons imprimer un jour/mois/année individuel et bien d'autres choses

Voyons voir un exemple

Imprimer la date en utilisant date.today()

Numéro du jour de la semaine d'aujourd'hui

La fonction date.today() vous donne également le numéro du jour de la semaine. Voici le tableau des jours de semaine qui commence par Monday à 0 et dimanche à 6 heures

Jour Numéro du jour de la semaine
Monday 0
Mardi 1
Mercredi 2
Jeudi 3
Friday 4
Samedi 5
Dimanche 6

Weekday Number est utile pour les tableaux dont l'index dépend du jour de la semaine.

Imprimer la date en utilisant date.today()

Date et heure actuelles de Python : now() aujourd'hui()

Étape 1) Comme les objets Date, nous pouvons également utiliser « OBJETS DATE-HEURE » en Python. Les objets date et heure Python donnent la date et l'heure dans heures, minutes, secondes et millisecondes.

Date et heure actuelles de Python

Lorsque nous exécutons le code pour datetime, il donne la sortie avec la date et l'heure actuelles.

Étape 2) Avec « DATETIME OBJECT », vous pouvez également appeler la classe horaire.

Supposons que nous souhaitions imprimer uniquement l'heure actuelle sans la date.

t = datetime.time(datetime.now())
  • Nous avions importé la classe temporelle. Nous allons lui attribuer la valeur actuelle du temps en utilisant datetime.now()
  • Nous attribuons la valeur de l'heure actuelle à la variable t.

Et cela me donnera juste le temps. Alors exécutons ce programme.

Date et heure actuelles de Python

D'accord, vous pouvez donc voir qu'ici, j'ai la date et l'heure. Et puis la ligne suivante, j'ai juste le temps tout seul

Étape 3) Nous appliquerons notre indexeur de jours de semaine à notre arrayList de jours de semaine pour savoir quel jour nous sommes aujourd'hui.

  • L'opérateur des jours de la semaine (wd) se voit attribuer le numéro de (0 à 6) en fonction du jour de la semaine en cours. Ici, nous avons déclaré le tableau de la liste par jours (lundi, mardi, mercredi… dimanche).
  • Utilisez cette valeur d’index pour savoir de quel jour nous sommes. Dans notre cas, il s'agit du numéro 2 et il représente le mercredi. Le résultat affichera donc "Quel est un mercredi".

Date et heure actuelles de Python

Voici le code complet pour obtenir la date et l'heure actuelles en utilisant datetime maintenant

from datetime import date
from datetime import time
from datetime import datetime
def main():
    ##DATETIME OBJECTS
    #Get today's date from datetime class
    today=datetime.now()
    #print (today)
    # Get the current time
    #t = datetime.time(datetime.now())
    #print "The current time is", t
    #weekday returns 0 (monday) through 6 (sunday)
    wd=date.weekday(today)
    #Days start at 0 for monday
    days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]
    print("Today is day number %d" % wd)
    print("which is a " + days[wd])

if __name__== "__main__":
    main()

Comment formater la sortie de date et d'heure avec Strftime()

À partir de maintenant, nous avons appris comment utiliser datetime et date objet en Python. Nous allons aller plus loin et apprendre à utiliser une fonction de formatage pour formater l'heure et la date.

Étape 1) Nous verrons d’abord une étape simple pour formater l’année. Il vaut mieux comprendre avec un exemple.

Formater la sortie de date et d'heure avec Strftime()

  • Nous avons utilisé le «fonction strftime » pour le formatage.
  • Cette fonction utilise différents code de contrôle pour donner une sortie.
  • Chaque code de contrôle ressemble à différents paramètres comme l'année, le mois, le jour de la semaine et la date [(%y/%Y – Année), (%a/%A- semaine), (%b/%B- mois), (%d – jour du mois)] .
  • Dans notre cas, c'est (« %Y ») qui ressemble à l'année, il imprime l'année complète avec le siècle (par exemple, 2018).

Étape 2) Maintenant, si vous remplacez (« %Y » par des minuscules, c'est-à-dire (« %y) et exécutez le code, la sortie affichera uniquement (18) et non (2018). Le siècle de l'année ne s'affichera pas comme indiqué dans la capture d'écran ci-dessous

Formater la sortie de date et d'heure avec Strftime()

Étape 3) La fonction Strf peut déclarer la date, le jour, le mois et l'année séparément. De plus, avec de petites modifications dans le code de contrôle dans la fonction strftime, vous pouvez formater le style du texte.

Formater la sortie de date et d'heure avec Strftime()

Dans la fonction strftime, si vous remplacez (%a) par un A majuscule, c'est-à-dire (%A), la sortie s'imprimera sous la forme « Firday » au lieu d'une simple abréviation « Fri ».

Formater la sortie de date et d'heure avec Strftime()

Étape 4) Avec l'aide de la fonction « Strftime », nous pouvons également récupérer l'heure, la date ou les deux du système local.

  1. %C- indique la date et l'heure locales
  2. %x- indique la date locale
  3. %X- indique l'heure locale

Formater la sortie de date et d'heure avec Strftime()

Dans la sortie, vous pouvez voir le résultat comme prévu

Étape 5) La « fonction strftime » vous permet d'appeler l'heure dans n'importe quel format 24 heures ou 12 heures.

Formater la sortie de date et d'heure avec Strftime()

Juste en définissant un code de contrôle comme %I/H pour heure, % M pour minute, %S pour seconde, on peut appeler l'heure pour différents formats

12 heures l'heure est déclarée [print now.strftime("%I:%M:%S %p) ]

24 heures l'heure est déclarée [imprimer maintenant.strftime("%H:%M")]

Voici le code complet pour convertir datetime en objet String.

#
#Example file for formatting time and date output
#
from datetime import datetime
def main():
   #Times and dates can be formatted using a set of predefined string
   #Control codes
      now= datetime.now() #get the current date and time
      #%c - local date and time, %x-local's date, %X- local's time
      print(now.strftime("%c"))
      print(now.strftime("%x"))
      print(now.strftime("%X"))
##### Time Formatting ####
      #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM
      print(now.strftime("%I:%M:%S %p")) # 12-Hour:Minute:Second:AM
      print(now.strftime("%H:%M")) # 24-Hour:Minute

if __name__== "__main__":
    main()

Qu'est-ce que le tempsdelta en Python?

Time Freakdelta en Python est un objet qui représente la durée. Il est principalement utilisé pour calculer la durée entre deux dates et heures. Il est également utilisé pour récupérer l'objet avec certains delta date et l'heure. Le tempsdelta l'objet prend en charge les opérations mathématiques telles que les additions, les soustractions, la multiplication, la division, etc.

Comment utiliser le tempsdelta Objets

Avec le temps Pythondelta objets, vous pouvez estimer le temps du futur et du passé. En d’autres termes, il s’agit d’un intervalle de temps permettant de prédire un jour, une date ou une heure particulière.

N'oubliez pas que cette fonction ne sert pas à imprimer l'heure ou la date, mais à CALCULER le futur ou le passé.. Voyons un moment Pythondelta exemple pour mieux le comprendre.

Étape 1) Pour exécuter le tempsdelta Objets, vous devez d'abord déclarer l'instruction d'importation, puis exécuter le code

Time Freakdelta Objets

  1. Écrire une déclaration d'importation pour l'heuredelta
  2. Maintenant, écrivez le code pour imprimer l'objet à partir du temps delta comme le montre la capture d'écran
  3. Exécutez le code. Le tempsdelta représente une période de 365 jours, 8 heures et 15 minutes et imprime la même chose

Déroutant? La prochaine étape aidera-

Étape 2) Obtenons la date et l'heure d'aujourd'hui pour vérifier si notre déclaration d'importation fonctionne bien. Lorsque le code est exécuté, il affiche la date du jour, ce qui signifie que notre instruction d'importation fonctionne bien.

Time Freakdelta Objets

Étape 3) Nous verrons comment récupérer la date dans un an delta objets. Lorsque nous exécutons le code, il donne le résultat comme prévu.

Time Freakdelta Objets

Étape 4) Un autre exemple de la façon dont le temps delta peut être utilisé pour calculer la date future à partir de la date et de l'heure actuelles

Time Freakdelta Objets

Étape 5) Regardons plus en détailplex exemple. Je voudrais déterminer combien de jours après le Nouvel An. Voici comment nous procéderons

  • En utilisant Today=date.today(), nous obtiendrons la date d'aujourd'hui
  • Nous savons que le nouvel an tombe toujours le 1er janvier, mais l'année peut être différente. En utilisant nyd= date(today.year,1,1), nous stockons la nouvelle année dans la variable nyd
  • si nyd < aujourd'hui : compares si la date actuelle est supérieure à la nouvelle année. Si oui, il entre dans la boucle while
  • ((today-nyd).days) donne la différence entre une date actuelle et la nouvelle année en JOURS

Time Freakdelta Objets

Le résultat montre que « Le jour de l’An est déjà passé il y a 11 jours ».

Voici le code de travail complet

#
# Example file for working with timedelta objects
#
from datetime import date
from datetime import time
from datetime import datetime
from datetime import timedelta

# construct a basic timedelta and print it
print (timedelta(days=365, hours=8, minutes=15))
# print today's date
print ("today is: " + str(datetime.now()))
# print today's date one year from now
print ("one year from now it will be:" + str(datetime.now() + timedelta(days=365)))
# create a timedelta that uses more than one argument
# print (in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4)))
# How many days until New Year's Day?
today = date.today()  # get todays date
nyd = date(today.year, 1, 1)  # get New Year Day for the same year
# use date comparison to see if New Year Day has already gone for this year
# if it has, use the replace() function to get the date for next year
if nyd < today:
    print ("New Year day is already went by %d days ago" % ((today - nyd).days))

Exemple Python 2

from datetime import date
from datetime import time
from datetime import datetime
def main():
 	##DATETIME OBJECTS
    #Get today's date from datetime class
	today=datetime.now()
	#print today
	# Get the current time
	#t = datetime.time(datetime.now())
	#print "The current time is", t
	#weekday returns 0 (monday) through 6 (sunday)
        wd = date.weekday(today)
	#Days start at 0 for monday
        days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"]
        print "Today is day number %d" % wd
        print "which is a " + days[wd]

if __name__== "__main__":
    main()
#
#Example file for formatting time and date output
#
from datetime import datetime
def main():
   #Times and dates can be formatted using a set of predefined string
   #Control codes
      now= datetime.now() #get the current date and time
      #%c - local date and time, %x-local's date, %X- local's time
      print now.strftime("%c")
      print now.strftime("%x")
      print now.strftime("%X")
##### Time Formatting ####   
      #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM
      print now.strftime("%I:%M:%S %p") # 12-Hour:Minute:Second:AM
      print now.strftime("%H:%M") # 24-Hour:Minute   

if __name__== "__main__":
    main()
#
# Example file for working with timedelta objects
#
from datetime import date
from datetime import time
from datetime import datetime
from datetime import timedelta

# construct a basic timedelta and print it
print timedelta(days=365, hours=8, minutes=15)
# print today's date
print "today is: " + str(datetime.now())
# print today's date one year from now
print "one year from now it will be:" + str(datetime.now() + timedelta(days=365))
# create a timedelta that uses more than one argument
# print "in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4))
# How many days until New Year's Day?
today = date.today()  # get todays date
nyd = date(today.year, 1, 1)  # get New Year Day for the same year
# use date comparison to see if New Year Day has already gone for this year
# if it has, use the replace() function to get the date for next year
if nyd < today:
    print "New Year day is already went by %d days ago" % ((today - nyd).days)

Résumé

Pour manipuler les dates et les heures en mode simple et complex façons dont le module datetime fournit différentes classes ou catégories comme

  • date – Manipuler uniquement la date (mois, jour, année)
  • time – Heure indépendante du jour (Heure, minute, seconde, microseconde)
  • datetime – Combinaison de l'heure et de la date (mois, jour, année, heure, seconde, microseconde)
  • fiabledelta— Une durée utilisée pour manipuler les dates
  • tzinfo — Une classe abstraite pour gérer les fuseaux horaires

Utiliser des objets datetime

  • L'importation d'objets datetime avant d'exécuter le code est obligatoire
  • Utilisation de la fonction date.today pour imprimer la date/mois/année individuelle ainsi que l'indexation du jour
  • Utilisation de l'objet date.time pour obtenir l'heure en heures, minutes, secondes et millisecondes

Formatage du délai d'attente avec la « fonction str f time »

  • Utilisez « fonction str f time » pour changer le format de l'année
  • Imprimer le jour, la date, le mois et l'année séparément,
  • Temps d'appel pour tout format 12h ou 24h

Time Freakdelta Objets

  • Avec le tempsdelta objets, vous pouvez estimer le temps pour le futur et le passé
  • Calculez le nombre total de jours restants pour le jour spécial (anniversaire) à partir de l'heure actuelle
  • Calculez le nombre total de jours écoulés pour un jour spécial (anniversaire) à partir de l'heure actuelle