Задача понятна. Нужно превратить строку даты '2025-12-31' в словарь с ключами 'year', 'month', 'day', каждое значение — строка.
Способ 1. Простой разбор через разделение строки
- Разделим исходную строку по дефису и получим три части: год, месяц, день.
- Соберём словарь из полученных частей.
Пример кода:
date_str = '2025-12-31'
year, month, day = date_str.split('-')
result = {'year': year, 'month': month, 'day': day}
print(result)
Ожидаемый вывод:
{'year': '2025', 'month': '12', 'day': '31'}
Способ 2. Через модуль datetime (более надёжно, валидирует дату)
- Используем datetime.strptime для парсинга строки.
- Затем форматируем части обратно в строки нужного вида.
Пример кода:
from datetime import datetime
date_str = '2025-12-31'
dt = datetime.strptime(date_str, '%Y-%m-%d')
result = {
'year': dt.strftime('%Y'),
'month': dt.strftime('%m'),
'day': dt.strftime('%d')
}
print(result)
Ожидаемый вывод:
{'year': '2025', 'month': '12', 'day': '31'}
Если нужно, могу сделать функцию-утилиту, которая принимает любую строку в формате '%Y-%m-%d' и возвращает такой словарь.