Yleinen välttämättömyys monissa ohjelmointisovelluksissa on päivämäärien ja aikojen käsittely. Pythonilla on vahvoja työkaluja ja paketteja, jotka yksinkertaistavat päivämäärän ja kellonajan muunnosten käsittelyä. Tässä artikkelissa tarkastellaan, kuinka päivämäärä- ja aika-arvoja voidaan muokata ja muotoilla tehokkaasti Python muuntamalla Merkkijonot päivämäärään esineitä ja takaisin. Jaamme artikkelin kahteen osaan:
- Python Muunna merkkijono päivämääräksi
- Python Muunna päivämäärä-aika merkkijonoksi
Kuinka muuntaa merkkijono päivämääräksi?
Pythonissa käyttäjät voivat joskus syöttää päivämäärän merkkijonona, minkä vuoksi emme voi suorittaa päivämäärä-aika-toimintoja sille. Toimintoja, kuten aikaero, päivämäärävertailu, työskentely aikavyöhykkeiden kanssa jne., ei voida tehdä merkkijonopäivämäärillä.
np.clip
Katsotaanpa merkkijonojen muuntamisprosessia päivämääriksi kahdella menetelmällä.
Input: Dec 4 2018 10:07 AM Output: 2018-12-04 10:07:00 Explanation: In this, we are converting the string to Date Time.>
1. Muunna merkkijono Datetimeksi käyttämällä Datetime.Strptime()
The Strptime() on saatavilla osoitteessa treffiaika moduuli ja sitä käytetään päivämäärän ja ajan muuntamiseen. Tämä toiminto muuttaa annettua merkkijono Datetime haluttuun muotoon.
Esimerkki: Ohjelma määrittelee funktion, joka muuntaa päivämäärän ja kellonajan, joka esitetään muodossa a merkkijono päivämäärä-aikaan objekti haluttuun muotoon. Muunnos suoritetaan käyttämällä datetime.strptime()-menetelmää.
Python 3
import> datetime> > # Function to convert string to datetime> def> convert(date_time):> >format> => '%b %d %Y %I:%M%p'> >datetime_str>=> datetime.datetime.strptime(date_time,>format>)> > >return> datetime_str> > date_time>=> 'Dec 4 2018 10:07AM'> print>(convert(date_time))> print>(>type>(convert(date_time)))> |
>
>
Lähtö:
2018-12-04 10:07:00 )>
2. Muunna merkkijono Datetime-muotoon käyttämällä Päivämäärä-moduuli
The Dateutil on kolmannen osapuolen moduuli. Dateutil-moduuli tukee päivämäärien jäsentämistä missä tahansa merkkijonomuodossa. Tämä moduuli tarjoaa sisäiset tiedot tämänhetkisistä maailman aikavyöhykkeistä. Jäsentää() voi muuntaa Python-merkkijonon päivämäärä-aika-muotoon. Ainoa käytetty parametri on merkkijono.
Esimerkki: Ohjelma tuo dateutil-kirjaston jäsennysmoduulin muuntamista varten merkkijono päivämäärä-aikaan jossa on funktio päivämäärä- ja aikamerkkijonojen jäsentämiseen. Parser.parse()-funktio tunnistaa muodon automaattisesti, mikä muuttaa merkkijonon 23. kesäkuuta 2022 19:31 DateTime-objektiksi.
Python 3
from> dateutil>import> parser> > DT>=> parser.parse(>'Jun 23 2022 07:31PM'>)> > print>(DT)> print>(>type>(DT))> |
>
>
Lähtö:
2022-06-23 19:31:00>
Lue lisää: Luo Python Datetime merkkijonosta
Kuinka muuntaa päivämäärä-aika merkkijonoksi?
Voit myös muuntaa DateTime-arvon merkkijonoksi eri tarkoituksiin, kuten raportointia, mukautettua muotoilua tai näyttöä varten. Katsotaanpa erilaisia tapoja muuntaa päivämäärä-aika merkkijonoksi.
Input: 2018-12-04 10:07:00 Output: Dec 4 2018 10:07:00AM Explanation: In this, we are converting the datetime format to the string>
1. Muunna päivämäärä-aika merkkijonoksi u laula Time.strftime()
Python strftime() toiminto on läsnä treffiaika moduuli luodaksesi merkkijonoesityksen määritetyn muotomerkkijonon perusteella. Käytämme tätä menetelmää muuntamiseen päivämäärä-aika merkkijonoon Pythonissa.
Toinen samanlainen toiminto on saatavilla Python-aikamoduulissa, joka muuntaa tuple- tai struct_time-objektin merkkijonoksi muotoargumentin määrittämänä.
Esimerkki: Ohjelma käännynnäisiä Päivämäärä ja aika merkkijonoon ja tuo Python-aikamoduulin, joka tarjoaa toimintoja aikaan liittyvien toimintojen käsittelyyn. Convert()-funktio ottaa syötteeksi tuple datetime_str, muuntaa sen aikaleimaksi käyttämällä time.mktime() ja muotoilee sitten aikaleiman merkkijonoesitykseen käyttämällä toimitettua muotoa %b%d%Y%r.
Python 3
import> time> > # Function to convert string to datetime> def> convert(datetime_str):> >datetime_str>=> time.mktime(datetime_str)> >format> => '%b %d %Y %r'> >dateTime>=> time.strftime(>format>, time.gmtime(datetime_str))> >return> dateTime> > date_time>=> (>2018>,>12>,>4>,>10>,>7>,>00>,>1>,>48>,>0>)> print>(convert(date_time))> print>(>type>(convert(date_time)))> |
>
>
Lähtö:
Dec 04 2018 04:37:00 AM>
Aika monimutkaisuus: O(1)
Aputila: O(1)
Lisätietoja: Kuinka muotoilla päivämäärä käyttämällä strftime()-komentoa Pythonissa
2. Muunna päivämäärä-aika merkkijonoksi käyttämällä Datetime
Tuo datetime-moduuli muuntaa päivämäärä-ajan merkkijonoksi käyttämällä määritettyä päivämäärää ja aikaa ja luo datetime-objekti. Luo muotomerkkijono, joka määrittelee datetime-objektin muotoiluvaatimukset.
Jos haluat luoda merkkijonon halutussa muodossa, käytä DateTime-objektin strftime()-metodia. Muotomerkkijono on strftime()-funktion argumentti.
Esimerkki: Ohjelma tuo datetime-moduulin, joka antaa Python-ohjelmoijille pääsyn luokkiin päivämäärien ja kellonaikojen käsittelyä varten. Annettuja päivämäärä- ja aika-arvoja, 14. maaliskuuta 2022 klo 15.30.00, käytetään datetime-objektin luomiseen. Datetime-objekti muunnetaan strftime()-menetelmällä muotoiltujen merkkijonojen perusteella merkkijonoesitykseen.
Python 3
import> datetime> > datetime_object>=> datetime.datetime(>2022>,>3>,>14>,>15>,>30>,>0>)> > format_string>=> '%Y-%m-%d %H:%M:%S'> > # Convert the datetime object to a string in the specified format> date_string>=> datetime_object.strftime(format_string)> > print>(date_string)> print>(>type>(date_string))> |
>
>
Lähtö:
2022-03-14 15:30:00>
Aika monimutkaisuus: O(1)
Aputila: O(1)
java saa nykyisen päivämäärän
Tässä artikkelissa olemme käsitelleet menetelmiä, joilla merkkijono muunnetaan päivämääräksi ja päinvastoin. Päivämäärän muuntaminen merkkijonoiksi tai päinvastoin voi olla erittäin hyödyllistä ja kätevää ohjelmoinnissa. Voit käyttää näitä menetelmiä muuntaaksesi päivämäärä-ajan merkkijonoiksi tai päinvastoin.
Lue myös:
- Muunnetaan merkkijono 'yyyy-mm-dd' DateTime-muotoon Pythonissa
- Kuinka muuntaa päivämäärä-aika päivämääräksi Pythonissa