Метод to_pydatetime
Метод to_pydatetime применяется к объекту Timestamp
и возвращает стандартный объект datetime из встроенной
библиотеки Python. Метод не принимает параметров.
Преобразование полезно при необходимости использовать
функции или методы, работающие с нативным типом datetime.
Синтаксис
timestamp.to_pydatetime()
Пример
Давайте создадим объект Timestamp и преобразуем его
в стандартный datetime:
import pandas as pd
from datetime import datetime
ts = pd.Timestamp('2026-09-09 15:30:45')
res = ts.to_pydatetime()
print(res)
print(type(res))
Результат выполнения кода:
2026-09-09 15:30:45
<class 'datetime.datetime'>
Пример
Метод to_pydatetime можно применять и к объектам,
содержащим информацию о часовом поясе. В этом случае
часовой пояс сохраняется:
import pandas as pd
ts = pd.Timestamp('2026-09-09 15:30:45', tz='Europe/Moscow')
res = ts.to_pydatetime()
print(res)
print(res.tzinfo)
Результат выполнения кода:
2026-09-09 15:30:45+03:00
Europe/Moscow
Пример
Давайте преобразуем объект Timestamp в datetime
и воспользуемся методами стандартного типа,
например, для форматирования строки:
import pandas as pd
ts = pd.Timestamp('2026-09-09 15:30:45')
dt = ts.to_pydatetime()
res = dt.strftime('%d.%m.%Y %H:%M')
print(res)
Результат выполнения кода:
"09.09.2026 15:30"
Пример
Метод to_pydatetime также можно использовать
для извлечения стандартного объекта из DatetimeIndex.
Для этого применим метод to_pydatetime к каждому
элементу индекса с помощью генератора списка:
import pandas as pd
idx = pd.DatetimeIndex(['2026-09-09', '2026-09-10', '2026-09-11'])
dt_list = [ts.to_pydatetime() for ts in idx]
print(dt_list)
Результат выполнения кода:
[datetime.datetime(2026, 9, 9, 0, 0), datetime.datetime(2026, 9, 10, 0, 0), datetime.datetime(2026, 9, 11, 0, 0)]