Python根据一个日期获得一年前的日期

1 篇文章 0 订阅
1 篇文章 0 订阅

Python根据一个日期获取一年前的对应日期

import time
date='20200408'
timeArray=time.strptime(date,"%Y%m%d")
timeStamp=(time.mktime(timeArray))   #转化为时间戳
end_time = time.strftime('%Y-%m-%d',time.localtime(timeStamp))
start_year = int(time.strftime('%Y',time.localtime(timeStamp))) - 1
month_day = time.strftime('%m%d',time.localtime(timeStamp))
start_time = '{}{}'.format(start_year,month_day)

此处date表示给定日期,一年前的日期为startdate。
先对date进行格式str到时间戳(timeStamp)的转换,结果为1577808000.0
time.localtime的处理对象是时间戳
time.strftime(’%Y’,time.localtime(timeStamp))获得的是年,-1就说明是去年
代码比较容易看懂,就不再解释.
结果为20190408,startdate的类型也是str。
月的变换与年类似(还有一些小细节1到12的变换需自行调节)

根据一个日期获取一周前或者昨天的对应日期

import datetime
date='20200402'
dt=datetime.datetime.strptime(date, "%Y%m%d")
oneweek=datetime.timedelta(weeks=1)
yesterweek=dt-oneweek

此处以获取前一周为例,日情况类似,weeks改成days即可
dt是将str转化为datetime类型的日期,然后调用datetime.timedelta
结果为2020-03-26 00:00:00

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值