关于python:Python比较两个日期的多种方法

38次阅读

共计 1578 个字符,预计需要花费 4 分钟才能阅读完成。

实际上,在咱们应用 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”还可支付大量学习材料。或是返回编程学习网,理解更多编程技术常识。

正文完
 0