logo

Època de Python a Datetime

En el següent tutorial, entendrem la conversió d'epoch a DateTime al Llenguatge de programació Python utilitzant alguns exemples. Utilitzarem Python epoch per convertir l'època en data i hora, respectivament. També tractarem els següents temes:

  1. Convertir DateTime en temps d'època
  2. Convertint l'època en una cadena DateTime
  3. Convertint l'època en mil·lisegons de DateTime
  4. Convertint l'època a la zona horària de DateTime
  5. Convertint l'època Unix en DateTime
  6. Convertint DateTime en temps d'època en mil·lisegons
  7. Convertint la marca de temps de l'època a DateTime
  8. L'any DateTime de l'època de Python està fora de l'interval

Però abans de començar, entenem breument el temps d'època a Python.

Què és el temps d'època a Python?

El temps d'època, també anomenat temps Unix o temps POSIX, és un marc per seguir el temps segons diversos segons que han passat des de l'era Unix, que són les 12:00 UTC de l'1 de gener de 1970. Aquest marc s'utilitza àmpliament per calcular marcs i programar dialectes. , inclòs Python.

A Python, podem treballar amb el temps d'edat utilitzant el mòdul de temps, que ofereix capacitats per controlar els valors relacionats amb el temps. Una de les capacitats essencials per gestionar el temps d'edat és time.time(), que retorna el temps en curs en segons des de l'edat com a nombre de punt de deriva.

Convertir l'hora d'època en DateTime mitjançant Python

Podem utilitzar el Python datetime.fromtimestamp() funció per convertir l'hora de l'època en DateTime. Considerem l'exemple següent que demostra la conversió de l'època de Python a DateTime.

Exemple:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 40246871 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time ) 

Sortida:

 Given epoch time: 40246871 Converted Datetime: 1971-04-12 01:11:11 

Explicació:

En l'exemple anterior, s'importa el mòdul datetime, tenint en compte el control dels valors de data i hora. Aleshores, la variable epoch_time es distribueix amb el valor particular de 40246871, abordant el lliscament de segons des de l'era Unix (1 de gener de 1970, 00:00:00 UTC).

La utilitat bàsica del contingut rau en l'ús de la capacitat datetime.fromtimestamp(). Aquesta capacitat requereix una mica d'inversió (epoch_time) i la converteix en una configuració més comprensible fent un objecte datetime. L'objecte datetime posterior, que adreça la mateixa data i hora, s'emmagatzema a la variable date_time.

nombre a cadena java

Per donar perceptibilitat al canvi, el contingut incorpora dues proclames print(). El primer, print('Given age time:', epoch_time), mostra l'estimació de la primera edat, mentre que el següent print('Converted Datetime:', date_time), produeix el valor canviat de datatime.

Convertint DateTime en temps d'època mitjançant Python

Per convertir DateTime en temps d'època, utilitzarem el marca de temps () funció. Primer, considerem l'exemple següent que il·lustra la conversió de DateTime en temps d'època.

Exemple:

 # Here, we are importing the datetime package import datetime # Here, we are using the timestamp() function to convert datetime into epoch time epoch_time = datetime.datetime(2021, 6, 9, 2, 0).timestamp() # Here, we are printing the values print('Converted epoch time:', epoch_time) 

Sortida:

 Converted epoch time: 1623184200.0 

Explicació:

A l'exemple anterior, el mòdul datetime s'importa per tractar les activitats relacionades amb la data i l'hora. El contingut mostra el canvi d'una data i hora en particular a l'hora d'edat utilitzant la capacitat de marca de temps ().

La interacció comença creant un objecte de data i hora que s'adreça al 9 de juny de 2021 a les 02:00. A continuació, aquest objecte de data i hora es passa com a contenció a la capacitat timestamp(), que retorna el mateix temps d'edat (la quantitat de segons que ha passat des de l'era Unix, 1 de gener de 1970, 00:00:00 UTC). El temps d'edat posterior es guarda a la variable epoch_time.

python filtrant

El contingut acaba amb una proclamació print(): print('Hora d'edat convertida:', epoch_time), que dóna l'hora d'edat determinada per a la data i l'hora predefinida. Convertir l'hora d'època en una cadena de DateTime mitjançant Python Per tal de convertir l'hora d'època en una cadena de datetime, hem de convertir l'hora d'època en una cadena de datetime i després passar la variable de datetime resultant a la funció strftime() per convertir-la en cadena de datetime amb èxit.

Exemple:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 700024 # Here, we are using datetime.fromtimestamp() function to convert epoch time into datetime object mytimestamp = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using strftime() function to convert datetime_str = mytimestamp.strftime( '%Y - %m - %d %H : %M : %S') # Here, we are printing the values print('Given epoch time:', epoch_time) print('Converted datetime string:', datetime_str) 

Sortida:

 Given epoch time: 700024 Converted datetime string: 1970 - 01 - 09 07 : 57 : 04 

Explicació:

A l'exemple anterior, hem tornat a importar el fitxer data i hora biblioteca. Després hem utilitzat el datetime.fromtimestamp() funció per convertir una època determinada en datetime i després passar-la a strftime() funció per convertir l'objecte de data i hora en una cadena de data i hora. El strftime() els paràmetres de funció són els codis de format en què volíem personalitzar la cadena.

    %Ydesigna l'any%mdesigna el mes%ddesigna el dia%Hdesigna una hora%Mdesigna el minut%Sdesigna segons

Convertint l'època de l'època en mil·lisegons de DateTime mitjançant Python

Podem obtenir el DateTime juntament amb els mil·lisegons de l'època utilitzant el mètode que vam fer per a la conversió de l'època en DateTime. Considerem l'exemple següent que demostra el mateix.

Exemple:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 402471.238201 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time ) 

Sortida:

 Given epoch time: 402471.238201 Converted Datetime: 1970-01-05 21:17:51.238201 

Explicació:

A l'exemple anterior, el mòdul datetime s'importa per treballar amb el tractament de les activitats relacionades amb la data i l'hora. La funció bàsica del contingut és canviar durant un temps d'edat determinat, determinat com a 402471.238201 segons, a una configuració intel·ligible que utilitza tant un objecte de data i hora com una cadena organitzada.

matrius bash

El contingut torna a utilitzar la capacitat datetime.fromtimestamp() per canviar al llarg del temps en un objecte datetime. L'objecte de data i hora posterior, guardat a la variable date_time, exemplifica les subtileses de comparació de data i hora. Finalment, el contingut imprimeix tant l'hora de la primera edat com l'objecte canviat de data i hora.

Aquestes proclames print() produeixen un rendiment que mostra tant el temps d'edat brut com l'objecte de data i hora organitzat, donant una representació raonable de la primera marca de temps i la seva adaptació humana.

Convertir l'hora d'època a la zona horària de DateTime mitjançant Python

Podem utilitzar el fus horari() funció de la pytz paquet per convertir l'hora d'època en la zona horària de DateTime. Considerem l'exemple següent que demostra la conversió del mateix.

Exemple:

 # Here, we are importing the required package(s) and module(s) from datetime import datetime import pytz # Here, we are using the timezone() function my_timezone = pytz.timezone('CST6CDT') # Here, we are using the localize() function date_timezone = my_timezone.localize( datetime( 2021, 6, 10, 9, 34, 32 ), is_dst = None ) # Here, we are printing the values print( 'DateTime Time zone:', date_timezone ) 

Sortida:

 DateTime Time zone: 2021-06-10 09:34:32-05:00 

Explicació:

A l'exemple anterior, el mòdul datetime s'utilitza juntament amb el mòdul pytz per treballar amb objectes de data i hora en una regió horària determinada. L'objectiu essencial del contingut és fer un objecte de data i hora i indicar expressament el seu punt de la zona horària a 'CST6CDT' (Hora estàndard focal amb hora d'estalvi de llum solar) i, en aquest moment, imprimir la data i l'hora posteriors.

D'aquesta manera, la capacitat timezone() del mòdul pytz s'utilitza per fer un objecte de regió temporal que s'adreça a 'CST6CDT'. Aleshores, la capacitat restrict() de l'objecte de regió horària s'utilitza per establir el punt de la zona horària per a un objecte de data i hora particular (10 de juny de 2021, 9:34:32)

El límit is_dst=Cap mostra que les dades del temps d'estalvi de llum (DST) no es donen de manera inequívoca, la qual cosa permet a la capacitat restrict() decidir l'estat DST adequat en vista de l'hora predeterminada. Per fi, el contingut imprimeix l'objecte de data i hora posterior amb la regió temporal establerta expressament.

Convertint l'hora d'època Unix en DateTime mitjançant Python

Aquest procés de conversió de l'hora de l'època Unix en DateTime és similar al que vam fer abans. Aquest procés implica el datetime.fromtimestamp() funció per convertir l'hora de l'època Unix en objecte DateTime i utilitza la funció strftime() funció per transformar l'objecte al format DateTime adequat.

Considerem l'exemple següent que demostra el mateix.

Exemple:

 # Here, we are importing the datetime library import datetime # Here, we have defined a constant value for the epoch time epoch_time = 252384207 # Here, we are using the datetime.fromtimestamp() function datetime_obj = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using the strftime() function datetime_str = datetime_obj.strftime( '%Y - %m - %d %H : %M : %S' ) # Here, we are printing the values print( 'Unix epoch time:', epoch_time ) print( 'DateTime:', datetime_str ) 

Sortida:

 Unix epoch time: 252384207 DateTime: 1977 - 12 - 31 08 : 13 : 27 

Explicació:

A l'exemple anterior, el mòdul de data i hora s'utilitza per canviar durant una edat determinada, indicada com a 252384207 segons, a una organització més intel·ligible. L'objectiu essencial és fer un objecte datetime des de l'època i després dissenyar-lo com una cadena per a l'espectacle. El contingut comença introduint el mòdul datetime. Aleshores s'utilitza la capacitat datetime.fromtimestamp() per canviar al llarg de l'edat en un objecte datetime.

L'objecte datetime posterior, guardat a la variable datetime_obj, tipifica les subtileses de data i hora relacionades. Aleshores, s'utilitza la capacitat strftime() per dissenyar l'objecte datetime com una cadena amb una organització particular. Per a aquesta situació, la configuració indicada és '%Y - %m - %d %H : %M : %S', adreçant l'any, el mes, el dia, l'hora, el moment i el segon.

Per fi, el contingut imprimeix tant l'hora de la primera edat Unix com la cadena de data i hora organitzada. Aquestes proclames print() creen un rendiment que mostra tant el temps d'edat brut com la cadena de data i hora organitzada, donant una representació inconfusible de la primera marca de temps i la seva adaptació humana.

Convertir DateTime en temps d'època en mil·lisegons mitjançant Python

Per convertir l'època DateTime en mil·lisegons, podem utilitzar el strptime() funció per retornar l'objecte datetime de la cadena especificada i utilitzar el marca de temps () funció per convertir l'objecte en segons. A més, hem de multiplicar el valor resultant per mil per tal de produir l'època DateTime en mil·lisegons.

Considerem un exemple que demostri el mateix.

com executar un script a linux

Exemple:

 # Here, we are importing the datetime module from datetime import datetime # Here, we are using the strptime() function dt_obj = datetime.strptime( '10-6-2021 10:33:35,72', '%d-%m-%Y %H:%M:%S,%f') epoch_msec = dt_obj.timestamp() * 1000 print('epoch time in milliseconds:', epoch_msec) 

Sortida:

 epoch time in milliseconds: 1623301415720.0 

Explicació:

A l'exemple anterior, el mòdul de data i hora s'utilitza per canviar una cadena dissenyada que s'adreça a una data i hora particulars a una estimació d'edat estimada en mil·lisegons. El cicle comença amb la utilització de la capacitat strptime(), que analitza la cadena d'informació '10-6-2021 10:33:35,72' a la llum del disseny donat '%d-%m-%Y %H: %M:%S,%f'. Aquesta configuració indica el dia, el mes, l'any, l'hora, el moment, el segon i les parts de microsegons de la cadena d'informació.

L'objecte datetime posterior, guardat a la variable dt_obj, resumeix les dades de data i hora analitzades. D'aquesta manera, el contingut determina l'edat utilitzant l'estratègia timestamp() per a l'objecte datetime, abordant la quantitat de segons que han passat des de l'edat Unix (1 de gener de 1970, 00:00:00 UTC). Augmentant aquest valor per 1000 creients a mil·lisegons, donant una representació més granular del temps.

Per fi, el contingut imprimeix el temps d'edat determinat en mil·lisegons utilitzant l'articulació print().

Convertint la marca de temps d'època a DateTime mitjançant Python

Podem utilitzar el datetime.fromtimestamp() funció per convertir la marca de temps de l'època en DateTime. A continuació es mostra un exemple:

Exemple:

 # Here, we are importing the datetime module import datetime # Here, we have defined a constant value for epoch timestamp epoch_time = 33456871 # Here, we are using the datetime.fromtimestamp() function the_datetime = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the values print( 'epoch timestamp:', epoch_time ) print( 'DateTime:', the_datetime ) 

Sortida:

 epoch timestamp: 33456871 DateTime: 1971-01-23 11:04:31 

Explicació:

com convertir string en int

A l'exemple anterior, el mòdul de data i hora s'utilitza per canviar la marca de temps d'una edat determinada, adreçada com a 33456871 segons, a una configuració més raonable i comprensible. El contingut comença incorporant el mòdul datetime, donant accés a diferents funcionalitats per treballar amb dates i hores.

La marca de temps d'edat, que implica la quantitat de segons que s'han desenvolupat des de l'era Unix (1 de gener de 1970, 00:00:00 UTC), s'assigna a la variable epoch_time dins del contingut. Per tant, la capacitat datetime.fromtimestamp() s'utilitza per canviar la marca de temps d'aquesta edat en un objecte de data i hora anomenat the_datetime.

El contingut es tanca imprimint tant la marca de temps de la primera edat com l'objecte de data i hora organitzat utilitzant les articulacions print().

Comprensió dels errors relacionats amb la data d'època a Python

Mentre treballem amb l'epoch datetime al llenguatge de programació Python, podem trobar un error que indica que Python epoch datetime year està fora de l'interval o un argument Python no vàlid.

Considerem un exemple per entendre el problema.

Exemple:

 # Here, we are importing the datetime module import datetime # Here, we are using the timestamp() function epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() # Here, we are printing the values print( epoch_time ) 

Sortida:

 Traceback (most recent call last): File 'D:Pythonepochpython.py', line 5, in epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() OSError: [Errno 22] Invalid argument 

Explicació:

A l'exemple anterior, el mòdul de data i hora s'utilitza per canviar una data i hora en particular, per a aquesta situació, '1960-06-10 00:00:00', a l'hora d'edat utilitzant la funció timestamp(). El contingut comença incorporant el mòdul de data i hora, donant accés a funcionalitats relacionades amb tasques de data i hora.

La utilitat central del contingut rau en l'ús de la funció timestamp(), que s'aplica a un objecte de data i hora que s'adreça al 10 de juny de 1960 a les 12:00. Aquesta capacitat funciona i retorna l'hora d'edat, abordant la quantitat de segons passats des de l'era Unix (1 de gener de 1970, 00:00:00 UTC) fins a la data i hora predeterminada.

A continuació, el resultat s'imprimeix utilitzant la proclamació print(), creant un resultat que podria semblar '-306691200.0'.