下面是Python实现简单日期工具类的完整攻略:
1. 设计思路
1.1 类的命名
我们首先要考虑的是我们要实现的日期工具类的类名,一个好的类名可以让人一眼看出其作用。这里我们可以采用“DateTool”这个类名。
1.2 类的成员变量
接下来我们需要定义这个类要包含哪些成员变量。根据日期的特点,我们可以将年、月、日这三个值作为这个类的成员变量,并设为私有变量。
1.3 类的构造函数
接下来我们可以设计类的构造函数,以及初始化对象的函数等。
1.4 类的方法
最后我们需要为这个类定义一些方法,比如获取当前日期、获取星期几、日期加减等。
2. 代码实现
class DateTool:
def __init__(self, year=1970, month=1, day=1):
self.__year = year
self.__month = month
self.__day = day
def get_year(self):
return self.__year
def set_year(self, year):
self.__year = year
def get_month(self):
return self.__month
def set_month(self, month):
self.__month = month
def get_day(self):
return self.__day
def set_day(self, day):
self.__day = day
def get_current_date(self):
import datetime
return datetime.datetime.now().strftime('%Y-%m-%d')
def get_weekday(self):
import datetime
weekday = datetime.datetime(self.__year, self.__month, self.__day).strftime('%w')
if weekday == '0':
return '星期日'
elif weekday == '1':
return '星期一'
elif weekday == '2':
return '星期二'
elif weekday == '3':
return '星期三'
elif weekday == '4':
return '星期四'
elif weekday == '5':
return '星期五'
else:
return '星期六'
def add_days(self, days):
import datetime
old_date = datetime.datetime(self.__year, self.__month, self.__day)
new_date = old_date + datetime.timedelta(days=days)
self.__year = new_date.year
self.__month = new_date.month
self.__day = new_date.day
return self.__year, self.__month, self.__day
3. 使用示例
下面的示例演示了如何使用我们实现的日期工具类去获取当前日期以及获取输入日期是星期几:
# 实例化日期工具类
date_tool = DateTool()
# 获取当前日期
current_date = date_tool.get_current_date()
print('当前日期:{}'.format(current_date))
# 获取输入日期是星期几
date_tool.set_year(2021)
date_tool.set_month(10)
date_tool.set_day(1)
weekday = date_tool.get_weekday()
print('输入日期是{}'.format(weekday))
输出结果为:
当前日期:2021-03-22
输入日期是星期五
另外一个示例演示了如何使用我们实现的日期工具类去在当前日期上加上或减去指定的天数:
# 实例化日期工具类
date_tool = DateTool()
# 在当前日期上加上5天
date_tool.add_days(5)
year = date_tool.get_year()
month = date_tool.get_month()
day = date_tool.get_day()
print('加上5天后的日期为{}年{}月{}日'.format(year, month, day))
# 在当前日期上减去3天
date_tool.add_days(-3)
year = date_tool.get_year()
month = date_tool.get_month()
day = date_tool.get_day()
print('减去3天后的日期为{}年{}月{}日'.format(year, month, day))
输出结果为:
加上5天后的日期为2021年3月27日
减去3天后的日期为2021年3月24日
以上就是Python实现简单日期工具类的完整攻略,希望可以帮助到你。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实现简单日期工具类 - Python技术站