Python Converti Datetime in Epoch
- Usa il metodo esplicito per convertire Datetime in Epoch in Python
-
Usa la funzione
timestamp()
per convertire Datetime in Epoch in Python -
Usa la funzione
strftime(format)
per convertire Datetime in Epoch in Python -
Usa la funzione
timegm
per convertire DateTime in Epoch in Python
La libreria datetime
può essere importata in un programma Python. Fornisce classi utilizzate per manipolare la data e l’ora nel codice Python.
Epoch è il punto di partenza della misurazione del tempo trascorso, e il suo valore solitamente varia e dipende dalla piattaforma utilizzata.
Questo tutorial discuterà diversi metodi per convertire datetime in epoch in Python.
Usa il metodo esplicito per convertire Datetime in Epoch in Python
In questo metodo, prendiamo la data corrente e la sottraiamo manualmente dalla data di inizio e poi la convertiamo in secondi utilizzando la funzione total_seconds()
e visualizzandola.
La data iniziale qui è 1970/1/1.
Il codice seguente usa il metodo esplicito per convertire datetime in epoch in Python.
import datetime
ts = (
datetime.datetime(2019, 12, 1, 0, 0) - datetime.datetime(1970, 1, 1)
).total_seconds()
print(ts)
Produzione:
1575158400.0
Usa la funzione timestamp()
per convertire Datetime in Epoch in Python
Un Timestamp è una serie di caratteri che determina il valore di quando si è verificato un particolare evento.
Python fornisce una funzione timestamp()
, che può essere usata per ottenere il timestamp di datetime dall’epoca.
Il codice seguente utilizza la funzione timestamp()
per convertire datetime in epoch in Python.
import datetime
ts = datetime.datetime(2019, 12, 1, 0, 0).timestamp()
print(ts)
Produzione:
1575158400.0
Questo è un metodo abbastanza semplice e ci fornisce risultati accurati.
Nota che la funzione timestamp()
funziona solo su Python 3.3+ e non è applicabile per l’uso nelle versioni precedenti di Python.
Usa la funzione strftime(format)
per convertire Datetime in Epoch in Python
Il metodo strftime(format)
viene utilizzato per convertire un oggetto in una stringa basata sul formato specificato dall’utente.
Per il contrario di questo processo, viene utilizzato il metodo strptime()
.
Il codice seguente utilizza il metodo strftime(format)
per convertire datetime in epoch in Python.
import datetime
ts = datetime.datetime(2019, 12, 1, 0, 0).strftime("%s")
print(ts)
Produzione:
1575158400
strftime(format)
potrebbe non fornire sempre la soluzione corretta. Questo metodo usa la direttiva %s
come argomento di strftime
, che Python in realtà non supporta. Potrebbe funzionare perché Python inoltra %s
al metodo strftime
del sistema.
Questo metodo non è il metodo più accurato per la conversione di datetime in epoch. Non è consigliabile utilizzare questo metodo semplicemente perché esistono metodi migliori e più accurati.
Usa la funzione timegm
per convertire DateTime in Epoch in Python
La funzione timegm()
accetta un valore temporale specifico e restituisce il valore di timestamp Unix corrispondente. L’epoca è considerata il 1970 e si presume la codifica POSIX. Le funzioni time.gmtime()
e timegm()
sono inverse l’una dell’altra.
Entrambe le librerie calendar
e time
devono essere importate nel programma Python per usare queste funzioni.
Il modulo calendar
ci fornisce la possibilità di produrre calendari e alcune funzioni aggiuntive e utili ad esso correlate.
Il codice seguente utilizza la funzione timegm()
per convertire il datetime in epoch.
import datetime
import calendar
d = datetime.datetime(2019, 12, 1, 0, 0)
print(calendar.timegm(d.timetuple()))
Produzione:
1575158400
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn