如何使用时间戳只比较日、月和年?

How to compare only day, month, and year using timestamp?

如果两个日期具有相同的日期而不考虑时间戳,我们如何比较它们?

例如:

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 方法,即 returns 一个 datetime.date 对象,忽略原始值的时间。

if date1.date() == date2.date():

如果不关心时间的话,也可以直接创建datetime.date实例,因为datetime.date.fromtimestamp也存在。

date1 = datetime.date.fromtimestamp(date1 // 1000)

datetime.date() returns a date object with the same year, month, and day

在你的情况下,你应该使用:

if(date1.date() == date2.date()):
  print(True)

你也可以通过简单地做

来缩短这个
print(date1.date() == date2.date())