软件测试|教你如何用Python获取昨天今天明天的日期

举报
霍格沃兹测试开发 发表于 2023/02/07 18:17:46 2023/02/07
【摘要】 我一直认为,本山大叔的昨天今天明天这个小品是春晚永远的经典,看完2023年春晚后(不对,我根本没看完,因为2023年春晚催眠效果太强),我更加坚定了我的想法。闲话就到这里,本山大叔的小品讲的是过去现在和未来,我们Python没这么复杂,就是没有引申意义的昨天今天明天。在Python中,datetime模块可以获取到不同的时间和日期。我们首选肯定是这个模块,那么,具体该如何操作呢?今天我们就跟...

在这里插入图片描述

我一直认为,本山大叔的昨天今天明天这个小品是春晚永远的经典,看完2023年春晚后(不对,我根本没看完,因为2023年春晚催眠效果太强),我更加坚定了我的想法。

闲话就到这里,本山大叔的小品讲的是过去现在和未来,我们Python没这么复杂,就是没有引申意义的昨天今天明天。

在Python中,datetime模块可以获取到不同的时间和日期。我们首选肯定是这个模块,那么,具体该如何操作呢?今天我们就跟大家一起来试试。

第一步:导包

from datetime import datetime
from datetime import timedelta

我们导入了两个子模块,一个是datetime,用来获取时间;第二个是timedelta,用来获取时间差。

我们运行一下。

有了包之后我们来看第二步,即获取现在的时间,可以精确到微秒。

在 datetime 里面有一个功能叫 now,就是来获取现在的时间。

我们把获取的时间复制给我取名的变量叫 now_time。

打印出来看一下,我们就得到了一个 datetime 格式的年月、日、时、分秒,微妙的数据。

now_time = datetime.now()

# 输出 2023-02-07 15:53:08.406752

获取今天的日期

昨天和明天的日期都可以通过今天的日期获取,所以我们要先获取到今天的日期。

我们在上面获得了现在的时间之后,接下来我们要得到今天的日期。

把 nowtime 拿过来之后,我们对它用一个方法叫 strftime。

然后这里面我们要制定好想要的格式,年月日就是 ymd,前面用百分号用横线连接。

然后把它复制给 today,也是我们取的变量名字,运行一下就得到了今天的日期是2023年2月7号。

now_time = datetime.now()
today = now_time.strftime('%Y-%m-%d')

# 输出 2023-02-07

获取昨天的日期

今天的日期获取好之后,下面我们来获取昨天的日期。

昨天的日期怎么获取呢?

后面的转换成想要的格式我们已经知道了,那就前面这个时间,现在 nowtime 指的是今天,我们要计算昨天就是往前推一天,减少一天的时间差。

这儿就把我们刚刚导入的 timedelta 这个子模块用起来,指定days=1就可以获得一个一天的时间差。

我们可以在下面运行看一下,看到确实这边得到的是一个 timedelta 的days=1 的时间差。

now_time = datetime.now()
yesterday = (now_time - timedelta(days=1)).strftime('%Y-%m-%d')

# 输出 2023-02-06

我们在这里用 nowtime 减去这个时间差就获得了昨天的时间,然后通过 strftime 指定成ymd年月日的格式运行一下,就得到了2023年2月6日,也就是昨天的日期。

获取明天的日期

与昨天的方法类似,是今天的日期加上时间差

now_time = datetime.now()
tomorrow = (now_time + timedelta(days=1)).strftime('%Y-%m-%d')

# 输出 2023-02-08

我们运行一下看看就得到了明天的日期是2023年2月8日,最后我们把结果打印出来,我们就得到了,今天的日期是2023年2月7号,昨天的日期2023年2月6号,明天的日期2023年2月8号,你学会了吗?

from datetime import datetime
from datetime import timedelta

now_time = datetime.now()
today = now_time.strftime('%Y-%m-%d')
yesterday = (now_time - timedelta(days=1)).strftime('%Y-%m-%d')
tomorrow = (now_time + timedelta(days=1)).strftime('%Y-%m-%d')
print(yesterday)
print(today)
print(tomorrow)

# 输出
2023-02-06
2023-02-07
2023-02-08

Python获取昨天今天明天日期的方法我们就介绍到这里,大家学会了吗?还有其他想学习的内容,欢迎给我留言哦!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。