07 Июл 2023
1 мин
1156

Преобразование строки с датой и временем в формате ISO 8601 в объект datetime в Python

Одна из распространенных задач при работе с датами и временем в Python — это преобразование строковых представлений даты и времени в объекты datetime.

Содержание

Одна из распространенных задач при работе с датами и временем в Python — это преобразование строковых представлений даты и времени в объекты datetime. Это полезно, например, при загрузке данных из источников, которые представляют дату и время в виде строк. Рассмотрим, как это можно сделать на примере строки с датой и временем в формате ISO 8601, который выглядит так: «2009-05-28T16:15:00».

Изначально можно было бы использовать модуль time и его функцию strptime для разбора строки, затем передать полученные элементы в конструктор datetime. Однако, это не самый удобный и «чистый» способ, особенно для новичков.

Более простой и предпочтительный способ — использовать метод fromisoformat() класса datetime. Этот метод принимает строку в формате ISO 8601 и возвращает объект datetime.

import datetime

dt_str = "2009-05-28T16:15:00"
dt = datetime.datetime.fromisoformat(dt_str)

print(dt)  # вывод: 2009-05-28 16:15:00

Этот способ является более «чистым» и прямолинейным, поскольку не требует разбиения строки на отдельные элементы и последующего их объединения. Также он является более изящным решением, поскольку использует встроенные возможности Python для работы с датой и временем в формате ISO 8601. Кроме того, он является более надежным, поскольку обрабатывает строку в строго определенном формате и возвращает объект datetime, который можно использовать в дальнейших вычислениях или операциях.

Содержание

Добавить комментарий

Определи профессию по рисунку