logo

Python DateTime – strptime() funkcija

strptime() yra kitas metodas, galimas DateTime, kuris naudojamas formatuoti laiko žymą, kuri yra eilutės formatu, į datos ir laiko objektą.

Sintaksė : datatime.strptime(time_data, format_data)

Parametras:



  • time_data yra laikas, esantis eilutės formatu
  • format_duomenys yra datos ir laiko formato duomenys, kurie konvertuojami iš laiko_duomenys naudojant šią funkciją.

Kaip veikia strptime()?

Šiai funkcijai reikia dviejų argumentų: eilutės, kurioje pateikiamas šiek tiek laiko, ir formato kodo, kad eilutė būtų pakeista į, eilutė pakeičiama į DateTime objektą, kaip nurodyta toliau pateiktame kodų sąraše.

Formatuoti kodus

formato kodas prasmė pavyzdys
%a Sutrumpintas savaitės dienos pavadinimas Saulė, mano
%A Visas savaitės dienos pavadinimas Sekmadienis Pirmadienis
%In Savaitės diena kaip dešimtainis skaičius 0…6
%d Mėnesio diena kaip dešimtainis skaičius su nuliu 01, 02
%-d mėnesio diena kaip dešimtainis skaičius 1, 2..
%b Sutrumpintas mėnesio pavadinimas sausis, vasario mėn
%m mėnesį kaip dešimtainį skaičių su nuliu 01, 02
%m mėnuo kaip dešimtainis skaičius 1, 2
%B Visas mėnesio pavadinimas Sausis Vasaris
%ir metai be šimtmečio kaip dešimtainis skaičius su nuliu 99.00
% ir metai be šimtmečio kaip dešimtainis skaičius 0,99
%IR metai su šimtmečiu kaip dešimtainis skaičius 2000, 1999 m
%H valanda (24 valandų laikrodis) kaip dešimtainis skaičius su nuliu 01, 23 d
%-H valanda (24 valandų laikrodis) kaip dešimtainis skaičius 1, 23
%I valanda (12 valandų laikrodis) kaip dešimtainis skaičius su nuliu 01, 12
%-I valanda (12 valandų laikrodis) kaip dešimtainis skaičius 1, 12
%p lokalės ryte arba vakare RYTO VAKARO
%M Minutės kaip dešimtainis skaičius su nuliu 01, 59
%-M Minutės kaip dešimtainis skaičius 1, 59
%S Antrasis kaip nulis užpildytas dešimtainis skaičius 01, 59
%-S Antrasis kaip dešimtainis skaičius 1, 59
%f mikrosekundės kaip dešimtainis skaičius, kairėje pusėje parašyta nulis 000000, 999999
%Su UTC poslinkis formoje +HHMM arba -HHMM
%SU Laiko juostos pavadinimas
%j metų diena kaip dešimtainis skaičius su nuliu 001, 365
%-j metų diena kaip dešimtainis skaičius 1 365
%IN Metų savaitės numeris (sekmadienis yra pirmasis) 0, 6
%IN Metų savaitės numeris 00, 53
%c atitinkamą lokalės datą ir laiką 2013 m. rugsėjo 30 d., pirmadienis, 07:06:05
%x lokalės atitinkamą datą 11/30/98
%X lokalės tinkamą laiko vaizdavimą 10:03:43
%% Pažodinis „%“ simbolis %

1 pavyzdys: „Python“ programa, skirta skaityti datą ir laiką ir gauti visų laiko duomenis naudojant strptime. Čia mes imsime laiko duomenis eilutės formatu ir ištrauksime valandas, minutes, sekundes ir milisekundes

Python3




# import datetime module from datetime> from> datetime>import> datetime> # consider the time stamp in string format> # DD/MM/YY H:M:S.micros> time_data>=> '25/05/99 02:35:5.523'> # format the string in the given format :> # day/month/year hours/minutes/seconds-micro> # seconds> format_data>=> '%d/%m/%y %H:%M:%S.%f'> # Using strptime with datetime we will format> # string into datetime> date>=> datetime.strptime(time_data, format_data)> # display milli second> print>(date.microsecond)> # display hour> print>(date.hour)> # display minute> print>(date.minute)> # display second> print>(date.second)> # display date> print>(date)>

>

>

Išvestis:

523 000

2

35

5

1999-05-25 02:35:05.523000

2 pavyzdys: Python kodas, kuris naudoja strptime. Čia paimsime laiko duomenis eilutės formatu ir ištrauksime laiko žymą %d/%m/%y %H:%M:%S.%f formatu.

Python3




# import datetime module from datetime> from> datetime>import> datetime> # consider the time stamps from a list in string> # format DD/MM/YY H:M:S.micros> time_data>=> [>'25/05/99 02:35:8.023'>,>'26/05/99 12:45:0.003'>,> >'27/05/99 07:35:5.523'>,>'28/05/99 05:15:55.523'>]> # format the string in the given format : day/month/year> # hours/minutes/seconds-micro seconds> format_data>=> '%d/%m/%y %H:%M:%S.%f'> # Using strptime with datetime we will format string> # into datetime> for> i>in> time_data:> >print>(datetime.strptime(i, format_data))>

>

rūgšties savybės dbms
>

Išvestis:

1999-05-25 02:35:08.023000

1999-05-26 12:45:00.003000

1999-05-27 07:35:05.523000

1999-05-28 05:15:55.523000

mes galime gauti laiką, kuris seka struktūrą su visomis datomis, naudodami patį strptime().

Sintaksė :

time.strptime (Laiko žyma, „%d/%m/%y %H:%M:%S“)

kur laiko žyma apima laiką ir datą

Pavyzdys : Python kodas, skirtas laiko struktūrai gauti:

Python3




#import time> import> time> # get data of 4 th april 2021 at time 9 pm> print>(time.strptime(>'04/04/21 09:31:22'>,>'%d/%m/%y %H:%M:%S'>))> # get data of 5 th april 2021 at time 9 pm> print>(time.strptime(>'05/04/21 09:00:42'>,>'%d/%m/%y %H:%M:%S'>))> # get data of 6 th april 2021 at time 9 pm> print>(time.strptime(>'06/04/21 09:11:42'>,>'%d/%m/%y %H:%M:%S'>))> # get data of 7 th april 2021 at time 9 pm> print>(time.strptime(>'07/04/21 09:41:12'>,>'%d/%m/%y %H:%M:%S'>))>

>

>

Išvestis:

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=4, tm_hour=9, tm_min=31, tm_sec=22, tm_wday=6, tm_yday=94, tm_isdst=-1)

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=5, tm_hour=9, tm_min=0, tm_sec=42, tm_wday=0, tm_yday=95, tm_isdst=-1)

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=6, tm_hour=9, tm_min=11, tm_sec=42, tm_wday=1, tm_yday=96, tm_isdst=-1)

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=7, tm_hour=9, tm_min=41, tm_sec=12, tm_wday=2, tm_yday=97, tm_isdst=-1)

Taip pat galima gauti eilutę datetime formatu yyyy-mm-dd datetime formatu. yyyy-mm-dd reiškia metai-mėnuo-diena. Naudodami funkciją strptime () galime konvertuoti eilutės formatą į DateTime. Naudosime formatą „%Y/%m/%d“, kad eilute būtų nustatyta data ir laikas.

Sintaksė: datetime.datetime.strptime(įvestis, formatas)

Parametras:

  • įvestis yra eilutė datetime
  • formatas yra formatas - 'yyyy-mm-dd'
  • datatime yra modulis

Tam pirmiausia importuojamas modulis ir pateikiama įvesties eilutė DateTime. Dabar naudokite strptime, kad gautumėte reikiamą formatą ir gautumėte datą iš DateTime naudodami funkciją data ().

1 pavyzdys : Python programa, skirta konvertuoti eilutės datetime formatą į datetime

Python3




# import the datetime module> import> datetime> # datetime in string format for may 25 1999> input> => '2021/05/25'> # format> 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

2 pavyzdys: Konvertuoti eilutės datetime sąrašą į datetime

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

Taip pat galime rodyti DateTime in %d/%m/%Y %H:%M:%S Formatas. Tam mes gausime duomenis data-mėnuo-metai valandos:minutės;sekundės. Taigi turime įvesti datos ir laiko eilutę ir gauti šį formatą

Sintaksė: datetime.strptime(įvesties_data, %d/%m/%Y %H:%M:%S)

Parametras:

  • datatime yra modulis
  • input_date yra eilutės datos ir laiko formatas
  • strptime naudojamas konvertuoti eilutę input_date į datetime

3 pavyzdys: Python programa, skirta eilutei datetime gauti į %d/%m/%Y %H:%M:%S formatą

Python3




#import datetime> from> datetime>import> datetime> # consider the datetime string in dd/mm/yyyy> # hh:mm:ss format> date>=> '25/05/2021 02:35:15'> # convert string datetime to dd/mm/yyyy hh:mm:ss> # format> datetime_date>=> datetime.strptime(date,>'%d/%m/%Y %H:%M:%S'>)> print>(datetime_date)>

>

>

Išvestis:

2021-05-25 02:35:15