Python - Date et heure

Souvent, en science des données, nous avons besoin d'une analyse basée sur des valeurs temporelles. Python peut gérer les différents formats de date et d'heure avec élégance. ledatetime La bibliothèque fournit les méthodes et fonctions nécessaires pour gérer les scénarios suivants.

  • Représentation de la date et de l'heure
  • Date Heure Arithmétique
  • Comparaison date-heure

Nous les étudierons un par un.

Représentation de la date et de l'heure

Une date et ses différentes parties sont représentées à l'aide de différentes fonctions datetime. En outre, il existe des spécificateurs de format qui jouent un rôle dans l'affichage des parties alphabétiques d'une date comme le nom du mois ou du jour de la semaine. Le code suivant montre la date du jour et diverses parties de la date.

import datetime

print 'The Date Today is  :', datetime.datetime.today()

date_today = datetime.date.today()
print date_today
print 'This Year   :', date_today.year
print 'This Month    :', date_today.month
print 'Month Name:',date_today.strftime('%B')
print 'This Week Day    :', date_today.day
print 'Week Day Name:',date_today.strftime('%A')

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

The Date Today is  : 2018-04-22 15:38:35.835000
2018-04-22
This Year   : 2018
This Month    : 4
Month Name: April
This Week Day    : 22
Week Day Name: Sunday

Date Heure Arithmétique

Pour les calculs impliquant des dates, nous stockons les différentes dates dans des variables et appliquons l'opérateur mathématique approprié à ces variables.

import datetime 
 
#Capture the First Date
day1 = datetime.date(2018, 2, 12)
print 'day1:', day1.ctime()

# Capture the Second Date
day2 = datetime.date(2017, 8, 18)
print 'day2:', day2.ctime()

# Find the difference between the dates
print 'Number of Days:', day1-day2


date_today  = datetime.date.today() 

# Create a delta of Four Days 
no_of_days = datetime.timedelta(days=4) 

# Use Delta for Past Date
before_four_days = date_today - no_of_days 
print 'Before Four Days:', before_four_days 
 
# Use Delta for future Date
after_four_days = date_today + no_of_days 
print 'After Four Days:', after_four_days

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

day1: Mon Feb 12 00:00:00 2018
day2: Fri Aug 18 00:00:00 2017
Number of Days: 178 days, 0:00:00
Before Four Days: 2018-04-18
After Four Days: 2018-04-26

Comparaison date-heure

La date et l'heure sont comparées à l'aide d'opérateurs logiques. Mais nous devons être prudents en comparant les bonnes parties des dates entre elles. Dans les exemples ci-dessous, nous prenons les dates futures et passées et les comparons à l'aide de la clause python if avec des opérateurs logiques.

import datetime

date_today  = datetime.date.today() 

print 'Today is: ', date_today
# Create a delta of Four Days 
no_of_days = datetime.timedelta(days=4) 

# Use Delta for Past Date
before_four_days = date_today - no_of_days 
print 'Before Four Days:', before_four_days 

after_four_days =  date_today + no_of_days

date1 = datetime.date(2018,4,4)

print 'date1:',date1

if date1 == before_four_days :
    print 'Same Dates'
if date_today > date1:
    print 'Past Date'
if date1 < after_four_days:
    print 'Future Date'

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

Today is:  2018-04-22
Before Four Days: 2018-04-18
date1: 2018-04-04
Past Date
Future Date