strptime() este o altă metodă disponibilă în DateTime, care este utilizată pentru a formata marca temporală care este în format șir în obiectul dată-oră.
Sintaxă : datetime.strptime(time_data, format_data)
Parametru:
- time_data este ora prezentă în format șir
- format_data sunt datele prezente în format datetime care sunt convertite din time_data folosind această funcție.
Cum funcționează strptime()?
Această funcție are două argumente, un șir în care este dat ceva timp și un cod de format, pentru a schimba șirul în, șirul este schimbat în obiectul DateTime conform listei de coduri de mai jos.
Formatați codurile
| cod de format | sens | exemplu |
|---|---|---|
| %A | Nume prescurtat pentru ziua săptămânii | Soarele, al meu |
| %A | Numele complet al zilei lucrătoare | Duminică luni |
| %În | Ziua săptămânii ca număr zecimal | 0…6 |
| %d | Ziua lunii ca zecimală cu zero | 01, 02 |
| %-d | ziua lunii ca număr zecimal | 1, 2.. |
| %b | Numele lunii prescurtat | ian, feb |
| %m | lună ca număr zecimal cu zero | 01, 02 |
| %-m | luna ca număr zecimal | 1, 2 |
| %B | Numele întregii luni | Ianuarie februarie |
| %și | an fără secol ca număr zecimal cu zero | 99.00 |
| %-și | an fără secol ca număr zecimal | 0,99 |
| %ȘI | an cu secol ca număr zecimal | 2000, 1999 |
| %H | oră (ceasul de 24 de ore) ca număr zecimal cu zero | 01, 23 |
| %-H | oră (ceasul de 24 de ore) ca număr zecimal | 1, 23 |
| %I | oră (ceasul de 12 ore) ca număr zecimal cu zero | 01, 12 |
| %-I | oră (ceasul de 12 ore) ca număr zecimal | 1, 12 |
| %p | localitatea AM sau PM | AM PM |
| %M | Minutul ca număr zecimal cu zero | 01, 59 |
| %-M | Minutul ca număr zecimal | 1, 59 |
| %S | Al doilea ca număr zecimal cu zero | 01, 59 |
| %-S | Al doilea ca număr zecimal | 1, 59 |
| %f | microsecundă ca număr zecimal, zero captusit pe partea stângă | 000000, 999999 |
| %Cu | UTC offset sub forma +HHMM sau -HHMM | |
| %CU | Nume fus orar | |
| %j | ziua anului ca număr zecimal cu zero | 001, 365 |
| %-j | ziua anului ca număr zecimal | 1, 365 |
| %ÎN | Numărul săptămânii din an (duminica fiind prima) | 0, 6 |
| %ÎN | Numărul săptămânii din an | 00, 53 |
| %c | reprezentarea corespunzătoare a datei și orei locale | Luni, 30 septembrie 07:06:05 2013 |
| %X | reprezentarea corespunzătoare a datei locale | 30.11.98 |
| %X | reprezentarea corespunzătoare a timpului local | 10:03:43 |
| %% | Un caracter literal „%”. | % |
Exemplul 1: Program Python pentru a citi datetime și pentru a obține toate datele de timp folosind strptime. Aici vom lua date de timp în format șir și vom extrage ore, minute, secunde și milisecunde
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)> |
>
>
Ieșire:
523000
2
35
5
1999-05-25 02:35:05.523000
Exemplul 2: Cod Python care folosește strptime. Aici vom lua date de timp în format șir și vom extrage marcajul de timp în format %d/%m/%y %H:%M:%S.%f.
Python3
python de căutare binară
# 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))> |
>
>
Ieșire:
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
putem obține ora care urmează o structură cu toate datele utilizând însuși strptime().
Sintaxă :
time.strptime(Stampă temporală, „%d/%m/%y %H:%M:%S”)
unde Timpul include ora și data
Exemplu : Cod Python pentru a obține timpul în structură:
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'>))> |
>
>
Ieșire:
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)
De asemenea, este posibil să obțineți șirul datetime în formatul datetime aaaa-mm-zz. aaaa-mm-zz reprezintă an-lună-zi. Putem converti formatul șirului în DateTime utilizând funcția strptime(). Vom folosi formatul „%Y/%m/%d” pentru a aduce șirul la datetime.
Sintaxă: datetime.datetime.strptime (intrare, format)
Parametru:
matrice în java
- intrarea este șirul datetime
- formatul este formatul – „aaaa-mm-zz”
- datetime este modulul
Pentru aceasta mai întâi, modulul este importat și este dat șirul de intrare DateTime. Acum utilizați strptime pentru a obține formatul necesar și pentru a obține data de la DateTime folosind funcția date().
Exemplul 1 : program Python pentru a converti formatul șir de date și oră în date și oră
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())> |
>
>
Ieșire:
25-05-2021
Exemplul 2: Convertiți lista de șiruri datetime în 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())> |
>
>
Ieșire:
25-05-2021
25-05-2020
15-02-2019
1999-02-04
De asemenea, putem afișa DateTime în %d/%m/%Y %H:%M:%S Format. Pentru aceasta, vom obține datele în formatul dată-lună-an ore:minute;secunde. Deci trebuie să luăm șirul de intrare datetime și să obținem acest format
Sintaxă: datetime.strptime(data_intrare, %d/%m/%Y %H:%M:%S)
Parametru:
- datetime este modulul
- input_date este formatul șirului datetime
- strptime este folosit pentru a converti șirul input_date în datetime
Exemplul 3: Programul Python pentru a obține șirul datetime în format %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)> |
>
comenzile linux creează un folder
>
Ieșire:
25-05-2021 02:35:15