from datetime import datetime from typing import Union class TimeUtils: """时间处理工具类""" @staticmethod def string_to_date_string(time_string: str, fmt: str = "%Y-%m-%d %H:%M:%S.%f") -> str: """ 将字符串格式的时间(如 '2025-11-04 08:39:48')转换为日期字符串 '2025-11-04'。 Args: time_string: 输入的时间字符串。 fmt: 输入时间字符串的格式。 Returns: 格式为 'YYYY-MM-DD' 的日期字符串。 """ try: dt_object = datetime.strptime(time_string, fmt) return dt_object.strftime("%Y-%m-%d") except (ValueError, TypeError): # 如果转换失败 return time_string @staticmethod def datetime_to_date_string(dt: datetime) -> str: """ 将datetime对象转换为日期字符串 '2025-11-04'。 Args: dt: 输入的datetime对象。 Returns: 格式为 'YYYY-MM-DD' 的日期字符串。 """ if not isinstance(dt, datetime): return dt return dt.strftime("%Y-%m-%d")