Метод strftime
Метод strftime применяется к объектам Series
с типом datetime через аксессор dt.
Он преобразует каждую дату в строку по указанному формату.
В параметре передается строка с кодами формата, например,
для вывода даты в виде '2026-09-09' используется формат '%Y-%m-%d'.
Синтаксис
series.dt.strftime(format)
Пример
Давайте создадим серию с датами и выведем их в формате год-месяц-день:
import pandas as pd
ser = pd.Series(pd.date_range('2026-01-01', periods=3))
res = ser.dt.strftime('%Y-%m-%d')
print(res)
Результат выполнения кода:
0 2026-01-01
1 2026-01-02
2 2026-01-03
dtype: object
Пример
Выведем даты в формате 'день.месяц.год':
import pandas as pd
ser = pd.Series(pd.date_range('2026-01-01', periods=3))
res = ser.dt.strftime('%d.%m.%Y')
print(res)
Результат выполнения кода:
0 01.01.2026
1 02.01.2026
2 03.01.2026
dtype: object
Пример
Выведем даты с названием месяца на русском языке:
import pandas as pd
import locale
locale.setlocale(locale.LC_TIME, 'ru_RU.UTF-8')
ser = pd.Series(pd.date_range('2026-01-01', periods=3))
res = ser.dt.strftime('%d %B %Y')
print(res)
Результат выполнения кода:
0 01 января 2026
1 02 января 2026
2 03 января 2026
dtype: object
Пример
Выведем даты с временем в формате 'часы:минуты':
import pandas as pd
ser = pd.Series(pd.date_range('2026-01-01 09:00:00', periods=3, freq='H'))
res = ser.dt.strftime('%Y-%m-%d %H:%M')
print(res)
Результат выполнения кода:
0 2026-01-01 09:00
1 2026-01-01 10:00
2 2026-01-01 11:00
dtype: object
Пример
Получим день недели и номер квартала для каждой даты:
import pandas as pd
ser = pd.Series(pd.date_range('2026-01-01', periods=5))
res = ser.dt.strftime('%A, %Y-Q%q')
print(res)
Результат выполнения кода:
0 Thursday, 2026-Q1
1 Friday, 2026-Q1
2 Saturday, 2026-Q1
3 Sunday, 2026-Q1
4 Monday, 2026-Q1
dtype: object