設計一款Unix時間戳和日期轉換工具,其代碼如下:
from datetime import datetimeclass Change_Date_Time(object):def __init__(self, date_str=None, date_num=None):self.date_str = date_strself.date_num = date_num# 轉時間戳def datetime2timestamp(self):format_date = datetime.strptime(self.date_str, '%a, %d %b %Y %H:%M:%S GMT')stamp = format_date.timestamp()return f"Unix時間戳為: \t{int(stamp)}"# 轉日期def timestamp2datetime(self):date_time = datetime.fromtimestamp(self.date_num)return f"Unix日期為: \t\t{date_time}"# 校驗傳參def check_params(self):# 兩個都為空或都不為空if (self.date_str is not None and self.date_num is not None) or (self.date_str is None and self.date_num is None):return "必須傳入且僅傳入一個參數: date_str 或 date_num!"# 傳入strif self.date_str is not None:return self.datetime2timestamp()else:return self.timestamp2datetime()if __name__ == "__main__":input_type = input("切換操作序號說明如下: \n1. 日期轉時間戳\n2. 時間戳轉日期\n請輸入切換操作序號 -> : ")if input_type.isdigit():# date_str = "Fri, 07 Mar 2025 02:40:13 GMT"# date_num = 1741305600if input_type == "1":input_str = input("請輸入需要轉換的日期(格式: Fri, 07 Mar 2025 02:40:13 GMT) -> :")date_time = Change_Date_Time(date_str=input_str)elif input_type == "2":input_num = int(input("請輸入需要轉換的時間戳(格式: 1741305600) -> :"))date_time = Change_Date_Time(date_num=input_num)else:print("無效的操作序號,請輸入1或2!")result = date_time.check_params()print(result)else:print("無效的輸入,請輸入數字!")
使用效果如下:
- 日期轉時間戳
- 時間戳轉日期