问题描述
如果两个日期具有相同的日期而不管时间戳如何,我们如何比较它们?
例如:
date1 = 1508651293229
date2 = 1508651293220
date1 = datetime.fromtimestamp(int(date1) / 1e3)
date2 = datetime.fromtimestamp(int(date2) / 1e3)
if(date1 == date2):
print(True)
但这会检查包括时间在内的全天戳记,而我只想检查日、月和年。
我尝试了一些文档,但找不到太多相关的内容。
解决方法
试试:
if date1.date() == date2.date():
print('True')
# and indeed,they are:
True
,
datetime.datetime
实例有一个 date
方法,它返回一个 datetime.date
对象,忽略原始值的时间。
if date1.date() == date2.date():
如果您不关心时间,也可以直接创建 datetime.date
实例,因为 datetime.date.fromtimestamp
也存在。
date1 = datetime.date.fromtimestamp(date1 // 1000)
,
datetime.date()
返回具有相同年月日的日期对象
在你的情况下,你应该使用:
if(date1.date() == date2.date()):
print(True)
您也可以通过简单的操作来缩短此时间
print(date1.date() == date2.date())