python实现向前偏移N天
在日常工作中,需要获取过去一段时间内的数据是很常见的。如果每次都手动计算会非常繁琐,因此我们可以借助python中datetime包下的timedelta类来实现。
下面我们以获取当前日期为例,通过代码获取当前日期前后偏移N天的具体日期。
import datetime
# 获取当前日期
today = datetime.datetime.now()
print("当前日期:", today.strftime("%Y-%m-%d"))
# 获取前N天的日期
before_days = 5
before_date = today - datetime.timedelta(days=before_days)
print("前{0}天的日期:".format(before_days), before_date.strftime("%Y-%m-%d"))
# 获取后N天的日期
after_days = 3
after_date = today + datetime.timedelta(days=after_days)
print("后{0}天的日期:".format(after_days), after_date.strftime("%Y-%m-%d"))
运行上述代码,输出结果如下:
当前日期: 2023-04-16
前5天的日期: 2023-04-11
后3天的日期: 2023-04-19
代码分为三个部分,首先获取当前日期,然后使用timedelta类计算前N天的日期和后N天的日期,并使用strftime方法将日期格式化输出。
需要注意的是,timedelta中days为负数表示往前推多少天,days为正数则往后推多少天。
总结
通过以上代码,我们可以快速地获取当前日期前后偏移N天的具体日期。在日常工作中,我们可以根据实际需求来灵活使用timedelta类来实现日期计算。