Python中如何加减日期

2023-10-13 17:23:57 浏览数 (3)

代码语言:javascript复制
可以使用Python内置的datetime模块来进行日期的加减运算。具体操作如下:
 
1. 加减天数
 
from datetime import datetime, timedelta
 
# 获取当前日期
current_date = datetime.now()
 
# 加一天
next_day = current_date   timedelta(days=1)
 
# 减两天
two_days_ago = current_date - timedelta(days=2)
上述代码中,使用timedelta来实现对日期的加减。days参数表示要加减的天数。
 
2. 加减月份
 
from dateutil.relativedelta import relativedelta
 
# 获取当前日期
current_date = datetime.now()
 
# 加一个月
next_month = current_date   relativedelta(months=1)
 
# 减两个月
two_months_ago = current_date - relativedelta(months=2)
上述代码中,使用dateutil库中的relativedelta来实现对月份的加减。months参数表示要加减的月份数。
 
需要注意的是,当使用timedelta和relativedelta的时候,如果加减后的结果还要求比较或者转换成字符串类型,最好在加减之前先把时间格式化为字符串形式,再进行加减处理。例如:
 
from datetime import datetime, timedelta
 
# 获取当前日期
current_date = datetime.now()
 
# 先将日期转换为字符串形式
current_date_str = current_date.strftime('%Y-%m-%d %H:%M:%S')
 
# 加一天
next_day_str = (current_date   timedelta(days=1)).strftime('%Y-%m-%d %H:%M:%S')
from dateutil.relativedelta import relativedelta
 
# 获取当前日期
current_date = datetime.now()
 
# 先将日期转换为字符串形式
current_date_str = current_date.strftime('%Y-%m-%d %H:%M:%S')
 
# 加一个月
next_month_str = (current_date   relativedelta(months=1)).strftime('%Y-%m-%d %H:%M:%S')

0 人点赞