logo

Python DateTime – функція strptime().

strptime() це інший метод, доступний у DateTime, який використовується для форматування мітки часу, яка має рядковий формат, до об’єкта дата-час.

Синтаксис : datetime.strptime(time_data, format_data)



Параметр:

  • time_data — це час у форматі рядка
  • format_data — це дані у форматі datetime, які перетворюються з time_data за допомогою цієї функції.

Як працює strptime()?

Ця функція приймає два аргументи: рядок, у якому вказано деякий час, і код формату, щоб змінити рядок, рядок змінюється на об’єкт DateTime відповідно до списку кодів, поданого нижче.

Формат кодів



код формату значення приклад
%a Скорочена назва дня тижня Сонце, моє
%A Повна назва дня тижня неділя, понеділок
% вхід День тижня як десяткове число 0…6
%d День місяця як десяткова кома з доповненням нулем 01, 02
%-d день місяця як десяткове число 1, 2..
%b Скорочена назва місяця січ, лют
місяць як десяткове число, доповнене нулем 01, 02
%-м місяць як десяткове число 1, 2
%B Повна назва місяця Січень лютий
% і рік без століття як нульове десяткове число 99,00
%-і рік без століття як десяткове число 0,99
рік із століттям як десяткове число 2000, 1999
%H година (24-годинний годинник) як десяткове число, доповнене нулем 01, 23
%-H година (24-годинний годинник) як десяткове число 1, 23
%I година (12-годинний годинник) як десяткове число, доповнене нулем 01, 12
%-I година (12-годинний годинник) як десяткове число 1, 12
%p місцевості до ранку або ввечері ДООБІДУ, ПІСЛЯ ОБІДУ
%M Хвилина як десяткове число з доповненням нуля 01, 59
%-M Хвилина як десяткове число 1, 59
%S Секунда як десяткове число, доповнене нулем 01, 59
%-S Секунда як десяткове число 1, 59
%f мікросекунда як десяткове число, ліворуч доданий нуль 000000, 999999
Зміщення UTC у формі +ГГХМ або -ГГХМ
Назва часового поясу
%j день року як десяткове число, доповнене нулем 001, 365
%-j день року у вигляді десяткового числа 1, 365
%IN Номер тижня року (першою є неділя) 0, 6
%IN Номер тижня року 00, 53
%c відповідне представлення дати та часу в локалі Пн, 30 вересня 07:06:05 2013 р
%x відповідне представлення дати локалі 30.11.98
%X відповідне представлення часу локалі 10:03:43
%% Буквальний символ «%». %

приклад 1: Програма Python для читання дати й часу та отримання даних про весь час за допомогою strptime. Тут ми візьмемо дані про час у форматі рядків і витягнемо години, хвилини, секунди та мілісекунди

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

>

>

Вихід:

523000

2

35

5

1999-05-25 02:35:05.523000

приклад 2: Код Python, який використовує strptime. Тут ми візьмемо дані про час у форматі рядка та витягнемо позначку часу у форматі %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))>

>

>

Вихід:

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

ми можемо отримати час, який слідує за структурою з усіма датами, використовуючи сам strptime().

Синтаксис :

time.strptime(Мітка часу, ‘%d/%m/%y %H:%M:%S’)

де Timestamp містить час і дату

наскільки великий екран мого комп'ютера

приклад : Код Python для отримання часу в структурі:

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

>

>

Вихід:

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)

Також можна отримати рядок дата-час у форматі дати-часу рррр-мм-дд. рррр-мм-дд означає рік-місяць-день. Ми можемо конвертувати рядковий формат у DateTime за допомогою функції strptime(). Ми будемо використовувати формат «%Y/%m/%d», щоб отримати рядок дати та часу.

Синтаксис: datetime.datetime.strptime(введення,формат)

Параметр:

  • введенням є рядок datetime
  • формат – це формат – «рррр-мм-дд»
  • datetime є модулем

Для цього спочатку імпортується модуль і надається вхідний рядок DateTime. Тепер використовуйте strptime, щоб отримати необхідний формат і отримати дату з DateTime за допомогою функції date().

Приклад 1 : Програма на Python для перетворення рядкового формату дати й часу на дату й час

сортування вставкою в java

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

>

>

Вихід:

2021-05-25

приклад 2: Перетворити список рядка datetime на datetime

Python3




просте число java
# 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())>

>

>

Вихід:

2021-05-25

2020-05-25

2019-02-15

1999-02-04

Ми також можемо відображати DateTime в %d/%m/%Y %H:%M:%S Формат. Для цього ми збираємося отримати дані у форматі дата-місяць-рік години:хвилини;секунди. Тож нам потрібно взяти вхідний рядок дати й часу й отримати цей формат

Синтаксис: datetime.strptime(дата_введення, %d/%m/%Y %H:%M:%S)

Параметр:

  • datetime є модулем
  • input_date — це формат рядка дати й часу
  • strptime використовується для перетворення рядка input_date у datetime

приклад 3: Програма Python для отримання рядка дата-час у форматі %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)>

>

>

Вихід:

2021-05-25 02:35:15