实际上,在咱们应用 Python 解决日期 / 工夫的时候,常常会遇到各种各样的问题。明天咱们就来探讨另一个问题,如何用 Python 比拟两个日期?
datetime
如果须要用 Python 解决日期和工夫,大家必定会先想到 datetime、time、calendar 等模块。在这其中,datetime 模块次要是用来示意日期工夫的,就是咱们常说的年月日 / 时分秒。
datetime 模块中罕用的类:
类名 | 性能阐明 |
---|---|
date | 日期对象,罕用的属性有 year,month,day |
time | 工夫对象 |
datetime | 日期工夫对象,罕用的属性有 hour,minute,second,microsecond |
timedelta | 工夫距离,即两个工夫点之间的长度 |
tzinfo | 时区信息对象 |
那么,如何用 datetime 模块比拟两个日期?
在交互式环境中输出如下命令:
import datetime
first_date = datetime.date(2022, 2, 22)
second_date = datetime.date(2022, 3, 1)
print(first_date < second_date)
输入:
True
咱们会发现 datetime
模块能够应用比拟运算符 <
或>
来比拟两个日期。上述代码中比拟的是日期对象,如果换成日期工夫对象也同样能够这样比拟。
在交互式环境中输出如下命令:
import datetime
first_date = datetime.datetime(2022, 2, 22, 12, 5, 0)
second_date = datetime.datetime(2022, 3, 1, 12, 5, 0)
print(first_date < second_date)
输入:
True
strptime
后面示例代码中,其实比拟的都是日期对象 / 日期工夫对象。但如果用户输出的、或批量导入的日期和工夫是字符串格局,咱们在进行比拟的第一步就是 先将 str 转换为 datetime。
至于转换方法也非常简单,只须要通过 datetime.strptime
即可实现。
在交互式环境中输出如下命令:
import datetime
strftime1 = datetime.datetime.strptime("2022-02-22", "%Y-%m-%d")
strftime2 = datetime.datetime.strptime("2022-03-01", "%Y-%m-%d")
print("日期 2022-02-22 大于 2022-03-01:", strftime1 > strftime2)
输入后果:
另外 time 模块中也有 strptime()
函数,能够依据指定的格局把工夫字符串解析为工夫元组,利用这一个性也能够比拟两个日期。
在交互式环境中输出如下命令:
import time
strftime1 = time.strptime("2022-02-22", "%Y-%m-%d")
strftime2 = time.strptime("2022-03-01", "%Y-%m-%d")
print(strftime1)
print(strftime2)
print("日期 2022-02-22 大于 2022-03-01:", strftime1 > strftime2)
输入后果:
以上,便是如何用 Python 比拟两个日期的几个小办法。实际上,Python 中工夫解决的不同模块、不同函数有很多能够总结的。
calendar(日历)模块、time(工夫)模块咱们后续还会具体介绍它们的小知识点,大家如果感兴趣能够给本文多多点赞反对一下。
以上就是本次分享的所有内容,如果你感觉文章还不错,欢送关注公众号:Python 编程学习圈,每日干货分享,发送“J”还可支付大量学习材料。或是返回编程学习网,理解更多编程技术常识。