logo

Python-epoke til Datetime

I den følgende opplæringen vil vi forstå konverteringen av epoke til DateTime i Python programmeringsspråk ved hjelp av noen eksempler. Vi vil bruke Python-epoken for å konvertere epoken til henholdsvis dato og klokkeslett. Vi vil også dekke følgende emner:

  1. Konvertering av DateTime til epoketid
  2. Konverterer epoke til DateTime-streng
  3. Konverterer epoke til DateTime millisekunder
  4. Konvertering av epoke til DateTime-tidssone
  5. Konvertering av Unix-epoke til DateTime
  6. Konvertering av DateTime til epoketid i millisekunder
  7. Konverterer epoketidsstempel til DateTime
  8. Python-epoken DateTime-året er utenfor området

Men før vi begynner, la oss kort forstå epoketid i Python.

Hva er epoketid i Python?

Epoketid, også kalt Unix-tid eller POSIX-tid, er et rammeverk for å følge tid som forskjellige sekunder som har gått siden Unix-alderen, som er kl. 12.00 UTC 1. januar 1970. Dette rammeverket brukes bredt i å finne rammer og programmere dialekter , inkludert Python.

I Python kan vi jobbe med alderstid ved å bruke tidsmodulen, som gir muligheter til å kontrollere tidsrelaterte verdier. En av de essensielle egenskapene for å administrere alderstid er time.time(), som returnerer den pågående tiden i sekunder siden alderen som et drivende punktnummer.

Konvertering av epoketid til DateTime ved hjelp av Python

Vi kan bruke Python datetime.fromtimestamp() funksjon for å konvertere epoketiden til DateTime. La oss vurdere følgende eksempel som demonstrerer konverteringen av Python-epoken til DateTime.

Eksempel:

 # 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 ) 

Produksjon:

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

Forklaring:

I eksemplet ovenfor importeres datetime-modulen, og tar hensyn til kontrollen av dato- og tidsverdier. Variabelen epoke_tid blir deretter delt ut den spesielle verdien av 40246871, og adresserer antallet sekunder siden Unix-alderen (1. januar 1970, 00:00:00 UTC).

Kjernenytten av innholdet ligger i bruken av datetime.fromtimestamp()-funksjonen. Denne egenskapen krever en viss investering (epoch_time) og endrer den til en mer forståelig konfigurasjon ved å lage et datetime-objekt. Det påfølgende datetime-objektet, som adresserer samme dato og klokkeslett, legges bort i variabelen date_time.

For å gi oppfattbarhet i endringen, inneholder innholdet to print() proklamasjoner. Den første, print('Gitt alder tid:', epoke_tid), viser den første alderstidsvurderingen, mens den påfølgende, print('Konvertert datotid:', dato_tid), gir den endrede verdien for dato og klokkeslett.

Konvertering av DateTime til epoketid ved hjelp av Python

For å konvertere DateTime til epoketid, vil vi bruke tidsstempel() funksjon. La oss først vurdere følgende eksempel som illustrerer konverteringen av DateTime til epoketid.

Eksempel:

 # 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) 

Produksjon:

 Converted epoch time: 1623184200.0 

Forklaring:

I eksemplet ovenfor importeres datetime-modulen for å håndtere dato- og tidsrelaterte aktiviteter. Innholdet viser endringen av en bestemt dato og klokkeslett til alderstid ved å bruke tidsstempel()-funksjonen.

Interaksjonen starter med å lage et datetime-objekt som adresserer 9. juni 2021, klokken 02.00. Dette datetime-objektet sendes deretter som en påstand til timestamp()-funksjonen, som returnerer samme alderstid (antallet sekunder som har gått forbi siden Unix-alderen, 1. januar 1970, 00:00:00 UTC). Den påfølgende alderstiden legges bort i variabelen epoketid.

Innholdet avsluttes med en print() proklamasjon: print('Konvertert alderstid:', epoch_tid), som gir den fastsatte alderstiden for den forhåndsdefinerte datoen. Konvertering av epoketid til DateTime-streng ved hjelp av Python For å konvertere epoketiden til datetime-streng, må vi konvertere epoketiden til datetime og deretter sende den resulterende datetime-variabelen til strftime()-funksjonen for å konvertere den til datetime-streng.

Eksempel:

 # 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) 

Produksjon:

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

Forklaring:

I eksemplet ovenfor har vi igjen importert dato tid bibliotek. Vi har da brukt datetime.fromtimestamp() funksjon for å konvertere en gitt epoketid til datetime og deretter overføre den til strftime() funksjon for å konvertere datetime-objektet til en datetime-streng. De strftime() funksjonsparametere er formatkodene der vi ønsket å tilpasse strengen.

    %OGangir året%mangir måneden%dangir dagen%Hangir en time%Mangir minuttet%Sangir sekunder

Konvertering av epoketiden til DateTime millisekunder ved hjelp av Python

Vi kan få DateTime sammen med millisekunder fra epoketiden ved å bruke metoden vi gjorde for konvertering av epoketid til DateTime. La oss se på følgende eksempel som viser det samme.

Eksempel:

10 ml til unser
 # 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 ) 

Produksjon:

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

Forklaring:

I eksemplet ovenfor importeres datetime-modulen for å arbeide med behandling av dato- og tidsrelaterte aktiviteter. Innholdets grunnleggende rolle er å endre over en gitt alderstid, bestemt som 402471.238201 sekunder, til en forståelig konfigurasjon som bruker både et datetime-objekt og en organisert streng.

Innholdet går tilbake for å bruke datetime.fromtimestamp()-funksjonen for å endre over alderstiden til et datetime-objekt. Det påfølgende datetime-objektet, lagt bort i variabelen date_time, eksemplifiserer finessene for sammenligning av dato og klokkeslett. Endelig skriver innholdet ut både den første alderstiden og det endrede over datetime-objektet.

Disse print() proklamasjonene produserer utbytte som viser både den grove alderstiden og det organiserte datetime-objektet, og gir en rimelig fremstilling av det første tidsstemplet og dets mennesketilpassede samme.

Konvertering av epoketid til DateTime-tidssone ved hjelp av Python

Vi kan bruke tidssone() funksjonen til pytz pakke for å konvertere epoketid til DateTime-tidssonen. La oss vurdere følgende eksempel som demonstrerer konverteringen av samme.

Eksempel:

 # 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 ) 

Produksjon:

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

Forklaring:

I eksemplet ovenfor brukes datetime-modulen sammen med pytz-modulen for å arbeide med dato- og tidsobjekter i et bestemt tidsområde. Det essensielle målet med innholdet er å lage et datetime-objekt og uttrykkelig sette ned punktet i tidssonen til 'CST6CDT' (Focal Standard Time with Sunlight Saving Time), og deretter skrive ut den påfølgende datoen og klokkeslettet.

På denne måten blir tidssone()-funksjonen fra pytz-modulen brukt til å lage et tidsregionobjekt som adresserer 'CST6CDT'. Deretter brukes restrict()-funksjonen fra tidsregionobjektet til å etablere punktet i tidssonen for et bestemt datetime-objekt (10. juni 2021, 9:34:32)

Grensen is_dst=Ingen viser at dataene for lyssparingstid (DST) ikke er utvetydig gitt, noe som tillater restrict()-evnen å bestemme passende sommertid-status i lys av den forhåndsbestemte tiden. Endelig skriver innholdet ut det påfølgende datetime-objektet med det eksplisitt innstilte tidsområdet.

Konvertering av Unix-epoketid til DateTime ved hjelp av Python

Denne prosessen med å konvertere Unix-epoketiden til DateTime ligner på det vi gjorde tidligere. Denne prosessen involverer datetime.fromtimestamp() funksjon for å konvertere Unix-epoketiden til DateTime-objektet og bruker strftime() funksjon for å transformere objektet til det passende DateTime-formatet.

La oss se på følgende eksempel som viser det samme.

Eksempel:

 # 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 ) 

Produksjon:

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

Forklaring:

I eksemplet ovenfor brukes datetime-modulen til å endre over en gitt alderstid, angitt som 252384207 sekunder, til en mer forståelig organisasjon. Det essensielle målet er å lage et datetime-objekt fra alderen og etterpå designe det som en streng for visning. Innholdet starter med å hente inn datetime-modulen. Datetime.fromtimestamp()-funksjonen brukes deretter til å endre over alderstiden til et datetime-objekt.

Det påfølgende datetime-objektet, lagt bort i variabelen datetime_obj, angir de relaterte dato- og klokkeslettet. Deretter brukes strftime()-funksjonen til å designe datetime-objektet som en streng med en bestemt organisasjon. For denne situasjonen er konfigurasjonen som er angitt '%Y - %m - %d %H : %M : %S,' som adresserer år, måned, dag, time, øyeblikk og sekund.

Endelig skriver innholdet ut både den første Unix-aldertiden og den ordnede dato- og tidsstrengen. Disse print() proklamasjonene skaper utbytte som viser både den grove alderstiden og den organiserte datetime-strengen, og gir en umiskjennelig fremstilling av det første tidsstemplet og dets menneskevennlige samme.

Konvertering av DateTime til epoketid i millisekunder ved hjelp av Python

For å konvertere epoken DateTime til millisekunder, kan vi bruke strptime() funksjonen for å returnere datetime-objektet fra den angitte strengen og bruke tidsstempel() funksjon for å konvertere objektet til sekunder. Dessuten må vi multiplisere den resulterende verdien med tusen for å produsere epoken DateTime i millisekunder.

La oss se på et eksempel som viser det samme.

Eksempel:

 # 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) 

Produksjon:

konverter en int til en streng java
 epoch time in milliseconds: 1623301415720.0 

Forklaring:

I eksemplet ovenfor blir datetime-modulen brukt til å endre en designet streng som adresserer en bestemt dato og klokkeslett til en alderstidsvurdering estimert i millisekunder. Syklusen starter med bruken av strptime()-funksjonen, som analyserer informasjonsstrengen '10-6-2021 10:33:35,72' i lys av den gitte designen '%d-%m-%Y %H: %M:%S,%f'. Denne konfigurasjonen angir dag, måned, år, time, øyeblikk, sekund og mikrosekund deler av informasjonsstrengen.

Det påfølgende datetime-objektet, lagt bort i variabelen dt_obj, representerer de analyserte dato- og tidsdataene. På denne måten fastslår innholdet alderstiden ved å bruke timestamp()-strategien for datetime-objektet, og adresserer antallet sekunder som har gått siden Unix-alderen (1. januar 1970, 00:00:00 UTC). Å øke denne verdien med 1000 troende til millisekunder, noe som gir en mer detaljert fremstilling av tid.

Endelig skriver innholdet ut den bestemte alderstiden i millisekunder ved å bruke print()-artikulasjonen.

Konvertering av epoketidsstempel til DateTime ved hjelp av Python

Vi kan bruke datetime.fromtimestamp() funksjon for å konvertere epoketidsstemplet til DateTime. Her er et eksempel vist nedenfor:

Eksempel:

 # 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 ) 

Produksjon:

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

Forklaring:

I eksemplet ovenfor blir datetime-modulen brukt til å endre et gitt alderstidsstempel, adressert som 33456871 sekunder, til en mer fornuftig og forståelig konfigurasjon. Innholdet starter med å hente inn datetime-modulen, som gir adgang til ulike funksjoner for å arbeide med datoer og klokkeslett.

Tidsstempelet for alder, som angir antallet sekunder som har utspilt seg siden Unix-alderen (1. januar 1970, 00:00:00 UTC), er allokert til variabelen epoch_time inne i innholdet. Derfor brukes datetime.fromtimestamp()-funksjonen til å endre over dette alderstidsstempelet til et datetime-objekt kalt the_datetime.

Innholdet lukkes ved å skrive ut både det første alderstidsstempelet og det organiserte datetime-objektet ved å bruke print()-artikulasjonene.

Forstå feil relatert til epoke datetime i Python

Mens vi arbeider med epoke-dato-klokkeslett i Python-programmeringsspråket, kan vi støte på en feil som sier at Python-epoke-dato-år er utenfor området eller Python-ugyldig argument.

La oss vurdere et eksempel for å forstå problemet.

Eksempel:

 # 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 ) 

Produksjon:

 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 

Forklaring:

I eksemplet ovenfor blir datetime-modulen brukt til å endre over et bestemt datetime, for denne situasjonen, '1960-06-10 00:00:00', til alderstid ved bruk av timestamp()-funksjonen. Innholdet starter med å hente inn datetime-modulen, som gir adgang til funksjonalitet knyttet til dato- og klokkeslettoppgaver.

Sentrumsnytten av innholdet ligger i bruken av timestamp()-funksjonen, som brukes på et datetime-objekt som adresserer 10. juni 1960, kl. 12.00. Denne funksjonen løser seg og returnerer alderstiden, og adresserer antallet sekunder som har gått siden Unix-alderen (1. januar 1970, 00:00:00 UTC) til den forhåndsbestemte dato og klokkeslett.

Resultatet skrives deretter ut ved å bruke print() proklamasjonen, og skaper et resultat som kan se ut til å være '- 306691200.0'.