Звичайна необхідність у багатьох додатках програмування – мати справу з датами та часом. Python має потужні інструменти та пакети, які спрощують перетворення дати та часу. У цій статті буде розглянуто, як ефективно маніпулювати та форматувати значення дати й часу Python шляхом перетворення Рядки для Datetime предметів і назад. Ми розділимо статтю на дві частини:
- Python перетворює рядок на DateTime
- Python перетворює дату і час на рядок
Як перетворити рядок на DateTime?
У Python користувачі іноді можуть вводити дату як рядок, через що ми не можемо виконувати з нею операції дати й часу. Такі операції, як різниця в часі, порівняння дат, робота з часовими поясами тощо, не можна виконувати над рядковими датами.
ядро java
Давайте розглянемо процес перетворення рядків у дати двома методами.
Input: Dec 4 2018 10:07 AM Output: 2018-12-04 10:07:00 Explanation: In this, we are converting the string to Date Time.>
1. Перетворіть String на Datetime за допомогою Datetime.Strptime()
The Strptime() доступний у дата, час і використовується для перетворення дати в час. Ця функція змінює задане рядок Datetime у потрібний формат.
приклад: Програма визначає функцію, яка перетворює дату й час, представлені як a рядок для дати та часу об’єкт, використовуючи потрібний формат. Перетворення виконується за допомогою методу datetime.strptime().
Python3
import> datetime> > # Function to convert string to datetime> def> convert(date_time):> >format> => '%b %d %Y %I:%M%p'> >datetime_str>=> datetime.datetime.strptime(date_time,>format>)> > >return> datetime_str> > date_time>=> 'Dec 4 2018 10:07AM'> print>(convert(date_time))> print>(>type>(convert(date_time)))> |
>
>
Вихід:
2018-12-04 10:07:00 )>
2. Перетворіть рядок на дату і час за допомогою Модуль Dateutil
The Dateutil є стороннім модулем. Модуль Dateutil підтримує розбір дат у будь-якому рядковому форматі. Цей модуль надає внутрішні факти про поточні світові часові пояси. Розібрати() може конвертувати рядок Python у формат дати-часу. Єдиний використовуваний параметр – рядок.
приклад: Програма імпортує модуль аналізатора бібліотеки dateutil для конвертації рядок з датою та часом який має функцію для аналізу рядків дати та часу. Функція Parser.parse() автоматично розпізнає формат, який перетворює рядок 23 червня 2022 19:31 на об’єкт DateTime.
Python3
from> dateutil>import> parser> > DT>=> parser.parse(>'Jun 23 2022 07:31PM'>)> > print>(DT)> print>(>type>(DT))> |
>
>
Вихід:
2022-06-23 19:31:00>
Детальніше: Створіть Python Datetime із рядка
Як перетворити Datetime на рядок?
Ви також можете перетворити DateTime на рядок для різних цілей, як-от звітування, спеціальне форматування або форматування для відображення. Давайте розглянемо різні методи перетворення datetime у рядок.
Input: 2018-12-04 10:07:00 Output: Dec 4 2018 10:07:00AM Explanation: In this, we are converting the datetime format to the string>
1. Перетворіть Datetime на String u співати Time.strftime()
Python strftime() функція присутня в дата, час модуль для створення представлення рядка на основі вказаного рядка формату. Ми використовуємо цей метод для перетворення datetime до рядка в Python.
Ще одна подібна функція доступна в модулі часу Python, який перетворює кортеж або об’єкт struct_time на рядок, як зазначено аргументом format.
приклад: Програма навернені Datetime до String і імпортує модуль часу Python, який пропонує функції для обробки дій, пов’язаних із часом. Функція convert() приймає кортеж datetime_str як вхідні дані, перетворює його на мітку часу за допомогою time.mktime(), а потім форматує мітку часу в представлення рядка, використовуючи наданий формат %b%d%Y%r.
Python3
умысел умисел
import> time> > # Function to convert string to datetime> def> convert(datetime_str):> >datetime_str>=> time.mktime(datetime_str)> >format> => '%b %d %Y %r'> >dateTime>=> time.strftime(>format>, time.gmtime(datetime_str))> >return> dateTime> > date_time>=> (>2018>,>12>,>4>,>10>,>7>,>00>,>1>,>48>,>0>)> print>(convert(date_time))> print>(>type>(convert(date_time)))> |
>
>
Вихід:
Dec 04 2018 04:37:00 AM>
Часова складність: О(1)
Допоміжний простір: О(1)
Вивчайте більше: Як відформатувати дату за допомогою strftime() у Python
2. Перетворіть Datetime на String за допомогою Datetime
Переведіть модуль datetime до перетворити datetime на String використовуючи вказану дату й час, і створіть об’єкт datetime. Створіть рядок формату, який визначає вимоги до форматування для об’єкта datetime.
Щоб створити рядок у потрібному форматі, скористайтеся методом strftime() об’єкта DateTime. Рядок формату є аргументом для функції strftime().
приклад: Програма імпортує модуль datetime, який надає програмістам Python доступ до класів для роботи з датами та часом. Надані значення дати й часу, 14 березня 2022 р., 15:30:00, використовуються для створення об’єкта datetime. Об’єкт datetime перетворюється на рядкове представлення на основі рядка формату за допомогою методу strftime().
Python3
import> datetime> > datetime_object>=> datetime.datetime(>2022>,>3>,>14>,>15>,>30>,>0>)> > format_string>=> '%Y-%m-%d %H:%M:%S'> > # Convert the datetime object to a string in the specified format> date_string>=> datetime_object.strftime(format_string)> > print>(date_string)> print>(>type>(date_string))> |
>
>
Вихід:
2022-03-14 15:30:00>
Часова складність: О(1)
Допоміжний простір: О(1)
У цій статті ми розглянули методи перетворення рядка в дату й час і навпаки. Перетворення дати-часу на рядки або навпаки може бути дуже корисним і зручним у програмуванні. Ви можете використовувати ці методи для перетворення datetime на рядки або навпаки.
Читайте також: