Konvertere Python -streng til dags dato

Konvertere Python -streng til dags dato
Håndtering av datoer og tidspunkter er et av de mange typiske problemene vi konfronterer i programvareutvikling. Etter å ha mottatt en dato-streng fra en API, må vi for eksempel konvertere den til et menneskelig lesbart format. Konverteringen vil være annerledes hvis den samme API brukes i forskjellige tidssoner. Tiden skal transformeres til tidssonen i et anstendig dato-bibliotek. Dette er bare et av de mange hensynene som må tas når du jobber med datoer og tider.

Heldigvis har Python en innebygd modul for å fungere med datoer og tider kalt DateTime. Den har flere funksjoner for driftsdatoer og tidspunkter, som du kanskje forventer. Vi kan enkelt analysere hvilken som helst dato-tekst og konvertere den til et DateTime-objekt ved hjelp av denne modulen. For å konvertere en streng til et DateTime- eller Time -objekt, bruk Strptime () -metoden fra DateTime og Time Modules. La oss se på illustrasjonene under for å forstå hvordan du kan oppnå det.

Eksempel 1

Vi skal bruke en ny metode som heter Strptime i dette eksemplet. Denne funksjonen krever to argumenter: Den første representerer datoen-strengen, og den andre er inngangsstrengformatet. DateTime trenger ikke å prøve å forstå formatet på egen hånd, noe som er betydelig mer beregningsdyktig. Ved å spesifisere formatet på denne måten, er analysen mye raskere. Type returverdi er datetime “07:10:25.127650, ”og formatet på datostrengen vår er“%y-%m-%d%h:%m:%s.%f ”.

Inngangsstrengen i vårt eksempel er “2015-05-20 Datetime Value Returned lagres i dato_time_myobj variabel. Vi kan bruke dato () og tid () metoder direkte på dette datetime -objektet fordi det er et DateTime -objekt. Den vedlagte koden vil bli utført i Spyder -verktøyet.

Importer DateTime
date_time_mystr = "2015-05-20 07:10:25.127650 "
date_time_myobj = DateTime.dato tid.strptime (date_time_mystr, '%y-%m-%d%h:%m:%s.%f ')
trykk ('Dato er:', date_time_myobj.Dato())
trykk ('Tiden er:', date_time_myobj.Dato())
trykk ('Dato og tid er:', date_time_myobj)

Nå er denne koden klar til å bli utført i Spyder -verktøyet. 'Dato' og 'tid' deler av inngangsstrengen skrives ut, som du kan se i resultatet.

Merk: Du kan være nysgjerrig på hva formatet “%y-%m-%d%h:%m:%s.%f ”betyr. Format -symboler er det de heter. Hvert token betegner et bestemt aspekt av datoen, for eksempel dagen, måneden eller året.

Eksempel 2

I neste eksempel vil vi bruke Python for å konvertere en streng til et DateTime Pandas -objekt. Det er en modul som heter Pandas. Vi vil importere pandaer som PP i dette tilfellet. PP.til DateTime (AB) -metoden i Python brukes til å konvertere en tekstdatetime til et DateTime -objekt. Trykk (pp.til DateTime (AB)) brukes til å motta utdataene som et DateTime -objekt. Den vedlagte koden vil bli utført i Spyder -verktøyet.

Importer pandaer som PP
AB = ['20 -10-2105 17:40:00 ']
trykk (pp.to_datetime (ab)))
trykk (ab)

Denne koden er klar til å bli utført i Spyder -verktøyet. Se det påfølgende pålagte skjermbildet for å se utdataene.

Eksempel 3

Vi kan nå sjekke hvordan du endrer en streng til en datetime med en tidssone i programmeringsspråk som Python. Vi har importert en modul som heter TimeZone i dette eksemplet. For å få den nåværende tiden med tidssone, bruk datetime.Nå (Timezone ('UTC')). Tid = “%y-%m-%d%h:%m:%s%z%z” er formatet. Prosent Z brukes til å beregne tidssonen så vel som datetime. Den vedlagte koden vil bli utført i Spyder -verktøyet.

fra DateTime Import DateTime
fra Pytz import tidssone
t = "%y_%m_d%h:%m:%s%z%z"
t = DateTime.Nå (Timezone ('UTC'))
trykk ('UTC:', t)

Nå er denne koden klar til å bli utført i Spyder -verktøyet. trykk ('UTC:', t) brukes til å motta utdataene. Utfallet kan sees i skjermbildet som vises under.

Konklusjon

Du har nå lært om datoer. Dette er en unik datatype. Verdiene ser ut til å være strenger, men de har egenskaper som å bestemme antall dager mellom to datoer, bestemme om en dato er større enn andre, og så videre. DateTime -biblioteket er en populær Python -modul for å manipulere datoer. DateTime Library's Strptime () -metode brukes til å oversette en strenginngang til en dato. Ovennevnte eksempler illustrerer de flere formene som er rutinemessig brukt. Nå vet du hvordan du bruker DateTime Strptime -funksjonen i pandaer, samt hvilke datetime -formatkoder er og hvordan du konverterer streng til dags dato i Python.