Lorsque je lis un fichier Excel avec le xlrd de python, etc., la date affichée sur Excel est remplacée par un nombre mystérieux à 5 chiffres tel que ** 41496 **.
Cela semble être dû au fait que dans Excel, la date commence à partir du 1er janvier 1900 (le premier jour) et que les données de date sont conservées sous forme de valeur numérique obtenue en ajoutant le nombre de jours à partir de cela.
Pour convertir ce nombre au format de date en python, utilisez timedelta et ajoutez-le comme suit: Remplacez num par le nombre Excel.
def excel_date(num):
from datetime import datetime, timedelta
return(datetime(1899, 12, 30) + timedelta(days=num))
Par exemple, la saisie de 41496 renvoie la date et l'heure du 10 août 2013.
excel_date(41946)
> datetime.datetime(2013, 8, 10, 0, 0)