Автор оригинала: Python Examples.
Python String к DateTime
Вы можете преобразовать строку даты и времени в объект DateTime в Python.
Пакет DateTime содержит методы в дату, время и значениях данных, чтобы преобразовать строку на дату, время или объекты DateTime.
В этом руководстве мы преобразуем строку в объект DateTime, используя следующие методы.
- datetime.dateTime.fromisoformat ()
- datetime.date.fromisoformat ()
- datetime.time.fromisoformat ()
Пример 1: Конвертировать дату и строку времени в объект dateTime
В этом примере мы возьмем некоторые из возможных отформатированных строк ISO на дату и время и преобразовывать их в datetime.dateTime Объекты, использующие datetime.dateTime.fromisoformat (dateTimestring) метод.
Python Program
from datetime import datetime
dt1 = datetime.fromisoformat('2020-11-18')
print(type(dt1), dt1)
dt2 = datetime.fromisoformat('2020-11-18T00:05:23')
print(type(dt2), dt2)
dt3 = datetime.fromisoformat('2020-11-18 00:05:23.283')
print(type(dt3), dt3)
dt4 = datetime.fromisoformat('2020-11-18 00:05:23.283+00:00')
print(type(dt4), dt4)
dt5 = datetime.fromisoformat('2020-11-18T00:05:23+04:00')
print(type(dt5), dt5)Выход
2020-11-18 00:00:00 2020-11-18 00:05:23 2020-11-18 00:05:23.283000 2020-11-18 00:05:23.283000+00:00 2020-11-18 00:05:23+04:00
После того, как вы преобразуете строку в объект DateTime, вы можете получить доступ к отдельным частям даты, как год, месяц, время и т. Д., Использование strftime ().
В следующей программе мы преобразуем строку в объект DateTime и часы печати, день недели.
Python Program
from datetime import datetime
dt = datetime.fromisoformat('2020-11-18 17:05:23.283')
#print hours
print(dt.strftime("%H"))
#print weekday
print(dt.strftime("%A"))Выход
17 Wednesday
Пример 2: Конвертировать строку даты на сегодняшний день объекта
В этом примере мы будем преобразовать строку даты отформатированной ISO на datetime.date Объект, использующий dateTime.date.fromisoformat (строка dateTime) метод.
Python Program
from datetime import date
#convert string to date object
dateStr = '2020-11-18'
date1 = date.fromisoformat(dateStr)
#access date object
print(date1)
print(date1.strftime('%Y')) #year
print(date1.strftime('%B')) #month name
print(date1.strftime('%d')) #day of monthВыход
2020-11-18 2020 November 18
Пример 3: Преобразовать время времени на объект времени
В этом примере мы возьмем некоторые из возможных форматированных временных строк ISO и преобразуйте их в datetime.time Объекты, использующие datetime.time.fromisoformat (dateTimestring) метод.
Python Program
from datetime import time
time2 = time.fromisoformat('17:15:23')
print(type(time2), time2)
time3 = time.fromisoformat('17:15:23.283')
print(type(time3), time3)
time4 = time.fromisoformat('17:15:23.283+00:00')
print(type(time4), time4)
time5 = time.fromisoformat('17:15:23+04:00')
print(type(time5), time5)Выход
17:15:23 17:15:23.283000 17:15:23.283000+00:00 17:15:23+04:00
Резюме
В этом руководстве примеров Python мы узнали, как преобразовать строку в объект DateTime, с помощью хорошо подробных примеров.