Parsing delle date in Python

Il parsing delle date in Python è un'operazione comune quando si lavora con dati temporali provenienti da stringhe, come timestamp nei file di log, input da form o dati esportati da sistemi esterni.

1. Utilizzare datetime.strptime

Il modulo datetime della libreria standard di Python fornisce la funzione strptime, che consente di convertire una stringa in un oggetto datetime specificando il formato atteso:


from datetime import datetime

d_str = "2025-07-23 14:30:00"
format = "%Y-%m-%d %H:%M:%S"

d = datetime.strptime(d_str, format)
print(data)

2. Parsing Flessibile con dateutil.parser

Per evitare di specificare manualmente il formato, è possibile usare il modulo dateutil, che fornisce un parser più intelligente:


from dateutil import parser

d = parser.parse("23 luglio 2025, ore 14:30")
print(d)

Questo approccio è utile quando il formato della data può variare o non è noto in anticipo.

3. Gestione degli Errori

È buona pratica gestire eventuali eccezioni durante il parsing, specialmente quando si lavora con input esterni:


from datetime import datetime

try:
    d = datetime.strptime("2025-07-23", "%d/%m/%Y")
except ValueError as e:
    print(f"Errore nel parsing: {e}")

4. Parsing con Pandas

Se si lavora con dataset tabulari, pandas offre una funzione molto comoda per convertire intere colonne in oggetti datetime:


import pandas as pd

df = pd.DataFrame({"data_str": ["2025-07-23", "2025-08-01"]})
df["data"] = pd.to_datetime(df["data_str"])
print(df)

Conclusione

Python offre diversi strumenti per effettuare il parsing delle date. datetime.strptime è preciso ma richiede formati espliciti, mentre dateutil e pandas offrono alternative più flessibili e potenti, specialmente in contesti di analisi dati.

Torna su