Come ottenere l’ora esatta, ovvero il current time, in Python? In questo articolo lo scopriamo assieme!
In Python esiste un modo per sapere l’ora esatta, quindi l’equivalente inglese del current time (tempo corrente per intenderci).
A dire il vero più che modo per ottenerla, è giusto parlare di pacchetto per averla.
Ciao mi chiamo Lorenzo Neri e sono un informatico: realizzo contenuti per aiutare le persone a padroneggiare l’arte del nuovo millennio, ovvero l’informatica!
In Python, esiste il pacchetto, neanche a farlo apposta, che si chiama datetime: lui è il prescelto per il nostro obiettivo.
Per farlo, è sufficiente importarlo e fare uso del metodo “now” sulla classe omonima.
Lascia che ti spieghi con un esempio diretto:
import datetime
adesso = datetime.datetime.now()
Un po’ ripetitivo lo ammetto.
Eppure, se stampiamo a video il contenuto di “adesso”, otteniamo un bel risultato:
>>> print(adesso)
2021-03-08 19:09:09.500313
Come vedi otteniamo facilmente l’ora esatta, anche se in un formato molto brutto e include anche la data.
Come ottenere (solo) l’ora esatta
Per ottenere solo l’ora esatta, in Python oltre a ciò che abbiamo fatto prima, dobbiamo fare un’aggiunta o meglio: una variante dei metodi visti in precedenza.
Facciamo un altro esempio terra-terra:
oraesatta = adesso.time()
>>> print(oraesatta)
19:09:09.500313
Direi che quelli di Mediaset sarebbero fieri di noi dico bene? 😀
Tuttavia per non confondere nessuno, possiamo ridurre di semplicità il codice e rendere più pulito il tutto, come? Così:
# in questo modo evitiamo la ripetizione nel codice
from datetime import datetime
adesso = datetime.now()
oraesatta = adesso.time()
Ma possiamo fare di più: una volta capito come ottenere l’ora esatta in Python, possiamo anche scriverla nel formato classico.
Come impostare l’orario nel formato hh:mm:ss
In parole povere, per togliere i centesimi di secondo, dobbiamo usare il metodo “strftime” e specificando anche il formato.
Riprendendo ciò che abbiamo visto prima, facciamo così:
oraesatta_formato_umano = oraesatta.strftime("%H:%M:%S")
>>> 19:13:28
Puoi ovviamente alterare il formato come meglio credi: nella documentazione sul pacchetto datetime troverai tutto ciò che ti serve.