logo

Python DateTime – funkcja strptime().

strptime() to kolejna metoda dostępna w DateTime, która służy do formatowania znacznika czasu w formacie ciągu do obiektu daty i godziny.

Składnia : datetime.strptime(data_czasu, dane_formatu)



Parametr:

  • time_data to czas w formacie ciągu
  • format_data to dane w formacie datetime, które są konwertowane z time_data za pomocą tej funkcji.

Jak działa strptime()?

Funkcja ta pobiera dwa argumenty, ciąg znaków, w którym podany jest czas oraz kod formatu, aby zmienić ciąg znaków, ciąg znaków jest zamieniany na obiekt DateTime zgodnie z listą kodów podaną poniżej.

Sformatuj kody



kod formatu oznaczający przykład
%A Skrócona nazwa dnia tygodnia Słońce, mój
%A Pełna nazwa dnia tygodnia Niedziela poniedziałek
%w Dzień tygodnia jako liczba dziesiętna 0…6
%D Dzień miesiąca jako ułamek dziesiętny uzupełniony zerami 01, 02
%-D dzień miesiąca w postaci liczby dziesiętnej 1, 2..
%B Skrócona nazwa miesiąca styczeń, luty
%M miesiąc jako liczba dziesiętna z dopełnieniem zera 01, 02
%-M miesiąc w postaci liczby dziesiętnej 1, 2
%B Pełna nazwa miesiąca Styczeń luty
%I rok bez stulecia jako liczba dziesiętna z dopełnieniem zera 99,00
%-I rok bez wieku jako liczba dziesiętna 0,99
%I rok ze stuleciem jako liczbą dziesiętną 2000, 1999
%H godzina (zegar 24-godzinny) jako liczba dziesiętna wypełniona zerami 01, 23
%-H godzina (zegar 24-godzinny) jako liczba dziesiętna 1, 23
%I godzina (zegar 12-godzinny) jako liczba dziesiętna wypełniona zerami 01, 12
%-I godzina (zegar 12-godzinny) jako liczba dziesiętna 1, 12
%P regionalny AM lub PM AM, PM
%M Minuta jako liczba dziesiętna z dopełnieniem zera 01, 59
%-M Minuta jako liczba dziesiętna 1, 59
%S Druga jako liczba dziesiętna z dopełnieniem zera 01, 59
%-S Druga jako liczba dziesiętna 1, 59
%F mikrosekunda jako liczba dziesiętna, z dopełnieniem zera po lewej stronie 000000, 999999
%z Przesunięcie UTC w postaci +GGMM lub -HHMM
%Z Nazwa strefy czasowej
%J dzień roku jako liczba dziesiętna uzupełniona zerami 001, 365
%-J dzień roku w postaci liczby dziesiętnej 1, 365
%W Numer tygodnia w roku (niedziela jest pierwszą) 0, 6
%W Numer tygodnia w roku 00, 53
%C odpowiednia reprezentacja daty i godziny w ustawieniach regionalnych pon. 30 września 07:06:05 2013
%X odpowiednia reprezentacja daty w ustawieniach regionalnych 30.11.98
%X odpowiednia reprezentacja czasu w ustawieniach regionalnych 10:03:43
%% Dosłowny znak „%”. %

Przykład 1: Program w Pythonie do odczytu daty i godziny i uzyskania wszystkich danych czasu za pomocą strptime. Tutaj weźmiemy dane dotyczące czasu w formacie ciągu i wyodrębnimy godziny, minuty, sekundy i milisekundy

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)>

tablica Java do wyświetlenia
>

>

Wyjście:

523000

2

35

5

25.05.1999 02:35:05.523000

Przykład 2: Kod Pythona używający strptime. Tutaj weźmiemy dane dotyczące czasu w formacie ciągu znaków i wyodrębnimy znacznik czasu w formacie %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))>

>

>

Wyjście:

25.05.1999 02:35:08.023000

26.05.1999 12:45:00.003000

27.05.1999 07:35:05.523000

28.05.1999 05:15:55.523000

możemy uzyskać czas zgodny ze strukturą ze wszystkimi datami, używając samej funkcji strptime().

Składnia :

time.strptime(znacznik czasu, „%d/%m/%y %H:%M:%S”)

gdzie Timestamp zawiera godzinę i datę

Przykład : Kod Pythona, aby uzyskać strukturę czasu:

Python3


strony z filmami podobne do 123movies



#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'>))>

>

>

Wyjście:

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)

Możliwe jest również uzyskanie ciągu znaków datetime w formacie datetime rrrr-mm-dd. rrrr-mm-dd oznacza rok-miesiąc-dzień. Możemy przekonwertować format ciągu na format DateTime za pomocą funkcji strptime(). Użyjemy formatu „%Y/%m/%d”, aby uzyskać ciąg znaków w formacie datetime.

Składnia: datetime.datetime.strptime(wejście,format)

Parametr:

  • wejście to ciąg znaków datetime
  • format to format – „rrrr-mm-dd”
  • datetime jest modułem

W tym celu najpierw importowany jest moduł i podawany jest wejściowy ciąg znaków DateTime. Teraz użyj strptime, aby uzyskać wymagany format i uzyskać datę z DateTime za pomocą funkcji date().

Przykład 1 : Program w języku Python służący do konwersji formatu string datetime na 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())>

>

>

Wyjście:

25.05.2021

Przykład 2: Konwertuj listę ciągów datetime na 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())>

>

>

Wyjście:

25.05.2021

25.05.2020

15.02.2019

1999-02-04

Możemy również wyświetlić DateTime w %d/%m/%Y %H:%M:%S Format. W tym celu otrzymamy dane w formacie data-miesiąc-rok godziny: minuty; sekundy. Musimy więc pobrać wejściowy ciąg daty i godziny i uzyskać ten format

Składnia: datetime.strptime(data_wejściowa, %d/%m/%Y %H:%M:%S)

Parametr:

  • datetime jest modułem
  • data_wejściowa to format daty i godziny ciągu
  • strptime służy do konwersji ciągu input_date na datetime

Przykład 3: Program w języku Python, który pobiera ciąg znaków datetime do formatu %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)>

>

Java pobiera aktualną datę
>

Wyjście:

2021-05-25 02:35:15