""" 時間工具 """ import datetime STANDARD_DATE_FMT_STR = '%Y-%m-%d' STANDARD_DATETIME_FMT_STR = '%Y-%m-%d %H:%M:%S' # timestamp、date、datetime、date_str、datetime_str互轉 def is_today(time_str, _type=STANDARD_DATETIME_FMT_STR): # 將字串時間轉換為 datetime 物件 datetime_obj = datetime.datetime.strptime(time_str, _type) # 獲取當前日期 today_date = datetime.date.today() # 獲取字串時間的日期 time_date = datetime_obj.date() # 比較日期是否相等 return today_date == time_date def timestamp2datetime(timestamp): return datetime.datetime.fromtimestamp(timestamp) def timestamp2datetime_str(timestamp, fmt=STANDARD_DATETIME_FMT_STR): return datetime.datetime.fromtimestamp(timestamp).strftime(fmt) def date2datetime_str(date: datetime.date, fmt=STANDARD_DATETIME_FMT_STR): return date.strftime(fmt) def date2date_str(date: datetime.date, fmt=STANDARD_DATE_FMT_STR): return date.strftime(fmt) def datetime2timestamp(dt: datetime.datetime): return int(dt.timestamp()) def datetime2date_str(dt: datetime.datetime, fmt=STANDARD_DATE_FMT_STR): return dt.date().strftime(fmt) def datetime2datetime_str(dt: datetime.datetime, fmt=STANDARD_DATETIME_FMT_STR): return dt.strftime(fmt) def date_str2datetime(date_str, fmt=STANDARD_DATE_FMT_STR): return datetime.datetime.strptime(date_str, fmt) def datetime_str2timestamp(datetime_str, fmt=STANDARD_DATETIME_FMT_STR): return int(datetime.datetime.strptime(datetime_str, fmt).timestamp()) def datetime_str2date(datetime_str, fmt=STANDARD_DATETIME_FMT_STR): return datetime.datetime.strptime(datetime_str, fmt).date() def datetime_str2datetime(datetime_str, fmt=STANDARD_DATETIME_FMT_STR): return datetime.datetime.strptime(datetime_str, fmt) def datetime_str2date_str(datetime_str, datetime_str_fmt=STANDARD_DATETIME_FMT_STR, fmt=STANDARD_DATE_FMT_STR): return datetime.datetime.strptime(datetime_str, datetime_str_fmt).strftime(fmt)