Konvertuoti eilutę į DateTime Python
Darbas su datomis ir laiku yra įprasta programavimo užduotis, o „Python“ siūlo galingą datos ir laiko modulį, skirtą su data ir laiku susijusioms operacijoms atlikti.
Šiame straipsnyje mes konvertuosime eilutę formato „yyyy-mm-dd“ (yyyy-mm-dd reiškia metai-mėnuo-diena) į DateTime objektą naudodami Python.
Pavyzdys:
Input: '2023-07-25' Output: 2023-07-25 11:30:00 Explanation: In This, we are converting the string 'yyyy-mm-dd' to Datetime format in Python.
Pastaba : Yra daug būdų, kaip rašyti datas eilutės formatu, pvz., yyyy-mm-dd, dd/mm/yyyy ir t. t. Naudodami šiuos metodus galime pakeisti bet kurį eilutės datos formatą į DateTime formatą.
Kaip „Python“ konvertuoti eilutes į „DateTime“?
Mes galime konvertuoti eilutę į DateTime naudodami skirtingus metodus ir metodus. Pasirinkite tinkamą metodą pagal savo reikalavimus ir dailiai tvarkykite netinkamas datos eilutes, kad užtikrintumėte savo Python programas. Pažvelkime į kiekvieną toliau pateiktą metodą:
- Naudojant strptime()
- Naudojant dateutil.parser.parse()
- Naudojant datetime.strptime()
Konvertuoti eilutės datą į datą laiką naudojant strptime()
Mes galime konvertuoti eilutės datą į DataTime objektą naudodami strptime() funkcija iš datos ir laiko modulis su Input (). Norėdami gauti eilutę į DateTime, naudosime formatą „%Y/%m/%d“.
Pavyzdys:
Python3
import> datetime> # datetime in string format for may 25 1999> input> => '2021/05/25'> format> => '%Y/%m/%d'> # convert from string format to datetime format> datetime> => datetime.datetime.strptime(> input> ,> format> )> # get the date from the datetime using date()> # function> print> (datetime.date())> |
Išvestis:
2021-05-25
Konvertuokite eilutę į DateTime objektus Python naudodami dateutil.parser.parse()
Mes galime konvertuoti eilutės datą į DateTime formatą naudodami dateutil.parser.parse() funkciją iš dateutil bibliotekos. Tai suteikia lankstesnį metodą analizuojant ir konvertuojant datos eilutes.
Python3
from> dateutil.parser> import> parse> def> convert_to_datetime(input_str, parserinfo> => None> ):> > return> parse(input_str, parserinfo> => parserinfo)> # Example usage> date_string> => '2023-07-25'> result_datetime> => convert_to_datetime(date_string)> print> (result_datetime)> |
Išvestis:
2023-07-25 00:00:00
Skaityti daugiau: Datautil naudojimas datoms analizuoti.
Konvertuokite eilučių datų sąrašą į datą laiką naudodami datetime.strptime()
Mes galime konvertuoti eilučių datų sąrašą į DateTime objektą naudodami datetime.strptime() . Python metodas datetime.strptime() leidžia mums išanalizuoti datos eilutę nurodytu formatu ir konvertuoti ją į datetime objektą.
Python3
# import the datetime module> import> datetime> # datetime in string format for list of dates> input> => [> '2021/05/25'> ,> '2020/05/25'> ,> '2019/02/15'> ,> '1999/02/4'> ]> # format> format> => '%Y/%m/%d'> for> i> in> input> :> > > # convert from string format to datetime format> > # and get the date> > print> (datetime.datetime.strptime(i,> format> ).date())> |
Išvestis:
2021-05-25 2020-05-25 2019-02-15 1999-02-04
Strptime() klaidų šalinimas
strptime() duos jums ValueError, jei įvesties eilutės nepavyks išanalizuoti nurodytu formatu.
Norėdami rasti galimą ValueError sprendimą, galite išbandyti blokus „išbandyti ir išskyrus“.
Pavyzdys:
Python3
from> datetime> import> datetime> # error as 2021 is not a leap year> date_string> => '2021-02-29'> date_format> => '%Y-%m-%d'> # Attempt to convert string to datetime> try> :> > date_object> => datetime.strptime(date_string, date_format)> > print> (date_object)> except> ValueError as e:> > print> (> 'Error:'> , e)> |
Išvestis
Error: day is out of range for month
Apžvelgėme įvairius metodus, kaip konvertuoti datos eilutę į DateTime formatą Python. DateTime formatas Python yra labai naudingas naudojant duomenis kaip datas, pvz., ieškant dienų tarp 2 datų.
Labai svarbu laikyti datas DateTime formatu, jei turite atlikti operacijas pagal datą. Vertėjas yyyy-mm-dd laikys eilutę, jei jos nepakeisite, todėl bus neįmanoma atlikti Datos ir laiko operacija ant jo.
Panašūs skaitiniai:
- Konvertuokite eilutę į DateTime ir atvirkščiai Python
- Manipuliuokite data ir laiku naudodami datos ir laiko modulį
- Sukurkite Python Datetime iš eilutės
- Darbas su datos laiko objektais ir laiko juostomis Python