class Date: __format_dic = { "1": "{obj.year} - {obj.mon} - {obj.day}", "2": "{obj.year} : {obj.mon} : {obj.day}", "3": "{obj.year} / {obj.mon} / {obj.day}" } def __init__(self, Year, Mon, Day): self.year = Year self.mon = Mon self.day = Day def __format__(self, s_str): if not s_str or not s_str in self.__format_dic: f = self.__format_dic["1"] else: f = self.__format_dic[ s_str] return f.format(obj=self) mDate = Date(2023, 3, 31) print("日期格式(选项为 1 ):",format(mDate, "1")) print("日期格式(选项为 2 ):",format(mDate, "2")) print("日期格式(选项为 3 ):",format(mDate, "3")) print("日期格式(选项为空, 则选择默认):",format(mDate, )) print("日期格式(选项不存在, 则选择默认):",format(mDate, "3iop"))
|