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.