strptime() je še ena metoda, ki je na voljo v DateTime in se uporablja za oblikovanje časovnega žiga, ki je v obliki niza, v predmet datum-čas.
Sintaksa : datetime.strptime(časovni_podatki, format_podatkov)
Parameter:
- time_data je čas, prisoten v obliki niza
- format_data so podatki v formatu datetime, ki se pretvorijo iz time_data s to funkcijo.
Kako deluje strptime()?
Ta funkcija sprejme dva argumenta, niz, v katerem je podano nekaj časa, in kodo oblike, v katero spremeni niz, niz pa se spremeni v objekt DateTime, kot je navedeno na spodnjem seznamu kod.
Oblikujte kode
označevalni html
kodo formata | pomen | primer |
---|---|---|
%a | Skrajšano ime dneva v tednu | Sonce, moj |
%A | Polno ime dneva v tednu | nedelja, ponedeljek |
% noter | Dan v tednu kot decimalno število | 0…6 |
%d | Dan v mesecu kot decimalka z ničlo | 01, 02 |
%-d | dan v mesecu kot decimalno število | 1, 2.. |
%b | Skrajšano ime meseca | jan, feb |
%m | mesec kot decimalno število z ničlo | 01, 02 |
%-m | mesec kot decimalno število | 1, 2 |
%B | Polno ime meseca | Januar februar |
% in | leto brez stoletja kot decimalno število z ničlo | 99,00 |
%-in | leto brez stoletja kot decimalno število | 0,99 |
% IN | leto s stoletje kot decimalno število | 2000, 1999 |
%H | ura (24-urna ura) kot decimalno število z ničlo | 01, 23 |
%-H | ura (24-urna ura) kot decimalno število | 1, 23 |
%JAZ | ura (12-urna ura) kot decimalno število z ničlo | 01, 12 |
%-JAZ | ura (12-urna ura) kot decimalno število | 1, 12 |
%p | dopoldne ali popoldne v lokalnem okolju | DOPOLDNE POPOLDNE |
%M | Minuta kot decimalno število z ničlo | 01, 59 |
%-M | Minuta kot decimalno število | 1, 59 |
%S | Sekunda kot decimalno število z ničlo | 01, 59 |
%-S | Sekunda kot decimalno število | 1, 59 |
%f | mikrosekunda kot decimalno število, z ničlo na levi strani | 000000, 999999 |
% z | Odmik UTC v obliki +HHMM ali -HHMM | |
% Z | Ime časovnega pasu | |
%j | dan v letu kot decimalno število z ničlo | 001, 365 |
%-j | dan v letu kot decimalno število | 1, 365 |
%IN | Številka tedna v letu (nedelja je prva) | 0, 6 |
%IN | Številka tedna v letu | 00, 53 |
%c | ustrezna predstavitev datuma in časa lokalne nastavitve | Pon, 30. september 07:06:05 2013 |
%x | ustrezna predstavitev datuma lokalne nastavitve | 30.11.98 |
%X | lokalna ustrezna časovna predstavitev | 10:03:43 |
%% | Dobesedni znak »%«. | % |
Primer 1: Program Python za branje datuma in časa z uporabo strptime pridobi vse podatke o času. Tukaj bomo vzeli podatke o času v obliki niza in izvlekli ure, minute, sekunde in milisekunde
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)> |
>
>
Izhod:
523000
2
35
5
1999-05-25 02:35:05.523000
Primer 2: Koda Python, ki uporablja strptime. Tukaj bomo vzeli podatke o času v obliki niza in ekstrahirali časovni žig v obliki %d/%m/%y %H:%M:%S.%f.
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))> |
>
>
Izhod:
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
čas, ki sledi strukturi z vsemi datumi, lahko dobimo z uporabo samega strptime().
Sintaksa :
time.strptime(časovni žig, '%d/%m/%y %H:%M:%S')
kjer časovni žig vključuje čas in datum
Primer : Koda Python za pridobitev časa v strukturi:
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'> ))> |
>
>
Izhod:
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)
Niz datuma in časa je mogoče dobiti tudi v obliki datuma in časa llll-mm-dd. llll-mm-dd pomeni leto-mesec-dan. Format niza lahko pretvorimo v DateTime s funkcijo strptime(). Uporabili bomo obliko '%Y/%m/%d', da dobimo niz za datum in čas.
Sintaksa: datetime.datetime.strptime(vnos,oblika)
Parameter:
- vhod je niz datum in čas
- format je format – 'llll-mm-dd'
- datetime je modul
Za to se najprej uvozi modul in podan je vhodni niz DateTime. Zdaj uporabite strptime, da dobite zahtevano obliko in pridobite datum iz DateTime s funkcijo date().
Primer 1 : program Python za pretvorbo zapisa datuma in časa niza v datum in čas
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())> |
>
>
Izhod:
2021-05-25
Primer 2: Pretvori seznam nizov datum in čas v datum in čas
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())> |
>
>
Izhod:
2021-05-25
2020-05-25
2019-02-15
1999-02-04
dharmendra starost
DateTime lahko prikažemo tudi v %d/%m/%Y %H:%M:%S Oblika. Za to bomo pridobili podatke v formatu datum-mesec-leto ure: minute; sekunde. Zato moramo vzeti vhodni niz datuma in časa in dobiti to obliko
Sintaksa: datetime.strptime(vhodni_datum, %d/%m/%Y %H:%M:%S)
Parameter:
- datetime je modul
- vhodni_datum je oblika zapisa datuma in časa niza
- strptime se uporablja za pretvorbo niza input_date v datum in čas
Primer 3: Program Python za pridobivanje niza datetime v obliki %d/%m/%Y %H:%M:%S
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)> |
>
>
Izhod:
2021-05-25 02:35:15