from datetime import datetime, timedelta from typing import Optional from config import config def time_to_hour(time: timedelta) -> float: return time.total_seconds() / 3600 def today_start() -> datetime: td = datetime.today() year = td.year month = td.month day = td.day return datetime(year=year, month=month, day=day, hour=0) def today_end() -> datetime: td = datetime.today() year = td.year month = td.month day = td.day return datetime(year=year, month=month, day=day, hour=23) def str_to_date(date: str) -> Optional[datetime]: if date: return datetime.strptime(date + "T00:00:00Z", config.DATETIME_FORMAT) def format_date(date: datetime) -> datetime: if date: return date.strftime(config.DATETIME_FORMAT)