利用datetime库生成日期时间

datetime第三方库可以根据需要,生成多种日期及时间,如当前日期、当前时间、指定日期、指定时间、一周后的现在、一天后的现在…

先import datetime

1.生成当前日期
t = datetime.date.today()
>>> 2022-07-21

可对生成的日期使用strftime进行自定义格式化,如

t = datetime.date.today().strftime('%Y年%m月%d日')
>>> 20220721日
t = datetime.date.today().strftime('%Y.%m.%d')
>>> 2022.07.21
2.生成当前日期及时间
t = datetime.datetime.now()
>>> 2022-07-21 14:29:22.933343

同样,可以对其进行格式化

t1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
>>> 2022-07-21 14:29:22
3.生成一周(天、小时、分、秒、毫秒、微秒)前的时间

在原本的datetime类型的时间下,加上datetime.timedelta()函数来实现,该函数参数可选:
days(天), seconds(秒), microseconds(微秒), milliseconds(毫秒), minutes(分钟), hours(时), weeks(周),那么,我们就可以根据自己的需要,往里面进行传参,正的则为未来时间,负的即为过去时间,如

一周前

t = datetime.datetime.now() + datetime.timedelta(weeks=-1)
>>> 2022-07-14 14:29:22.019178

一周后

t = datetime.datetime.now() + datetime.timedelta(weeks=1)
>>> 2022-07-28 14:29:22.019178

6天后

t = datetime.datetime.now() + datetime.timedelta(days=6)

或者,效果一样

t = datetime.datetime.now() + datetime.timedelta(weeks=1,days=-1)

其他参数以此类推

4.生成指定日期

如果遇到一些查询条件设置,需要生成指定时间,则可以用datetime的replace函数进行替代生成,在datetime.datetime.today()生成日期及时间下的replace()有从year(年)到 microsecond(微秒)的参数,但在datetime.date.today()生成日期下的replace仅有year(年)、month(月)、日(day)。
如,生成2018年6月8日

t = datetime.date.today().replace(year=2018,month=6,day=8)

生成2018年6月8日下午2点30分0秒的时间,可以再使用strftime()函数格式化去掉后面的微秒毫秒级别时间

t2 = datetime.datetime.today().replace(year=2018,month=6,day=8,hour=14,minute=30,second=0)
>>> 2018-06-08 14:30:00.033747

到此,就可以使用上述方法获得一些想要获取的日期和时间了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值