🔹 Datetime в Python: простые приёмы 🔹 Как правильно работать с датами и временем в Python? 🔸 datetime нужен, чтобы оперировать временем как объектами, а не как строками — считать разницы, добавлять интервалы, сравнивать даты. Без этого операции по времени становятся ненадёжными и хрупкими.
🔸 Парсинг (преобразование строки в дату) и форматирование через strftime нужны для ввода/вывода: используйте datetime.strptime или fromisoformat для разбора и .strftime для вывода в нужном формате. Это позволяет валидировать и локализовать строки времени.
🔸 Временные зоны решают несоответствия локального и глобального времени. Есть naive (без tz) и aware (с tz). Для конверсий используйте zoneinfo (или pytz) и astimezone, иначе получите неверные расчёты при смене зоны или летнем времени.
from datetime import datetime from zoneinfo import ZoneInfo
dt = datetime.fromisoformat("2023-08-17T12:00:00+03:00") print(dt.strftime("%Y-%m-%d %H:%M:%S %Z%z"))
d2 = datetime.strptime("17-08-2023 12:00", "%d-%m-%Y %H:%M") d2 = d2.replace(tzinfo=ZoneInfo("Europe/Moscow")) print(d2.astimezone(ZoneInfo("UTC")).strftime("%Y-%m-%d %H:%M:%S %Z"))
📚 Начните с преобразования строк в datetime, держите объекты aware при работе с разными зонами и форматируйте через strftime.
➡️ Мы в Telegram - Сетке - ВК Буду рад вашей реакции здесь⬇️
В этом посте были ссылки, но мы их удалили по правилам Сетки