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.