【问题标题】:Compare only today's date without hours/min/sec仅比较今天的日期,没有小时/分钟/秒
【发布时间】:2021-10-27 00:11:45
【问题描述】:

我想将今天的时间与另一个没有小时/分钟或秒的新时间进行比较。忽略小时和分钟...

换句话说,如果无论是小时还是分钟,这两天都一样,那没关系(额外),否则不好(太旧)...我试过了,但即使在同一天仍然继续与小时/分钟和秒。我该怎么做?

import datetime
currentdate = datetime.datetime.now()
print(currentdate)

newsdate = "Oct-26-2021"
newsdate = datetime.datetime.strptime(newsdate, "%b-%d-%Y")
print(newsdate)

if currentdate == newsdate:
    print("Extra")
else:
print("Too old")`

【问题讨论】:

  • 您可以使用datetime.date.today() 获取今天的日期,无需时间。

标签: python time compare


【解决方案1】:

仅使用日期时间的 date 组件进行比较,可通过.date() 属性访问:

import datetime
currentdate = datetime.datetime.now()
print(currentdate)

newsdate = "Oct-26-2021"
newsdate = datetime.datetime.strptime(newsdate, "%b-%d-%Y")
print(newsdate)

if currentdate.date() == newsdate.date():
    print("Extra")
else:
    print("Too old")

上面的内容也可以改写如下(也许有助于其他人的可读性):

from datetime import date, datetime

currentdate: date = date.today()
print(currentdate)

date_string = "Oct-26-2021"
newsdate: date = datetime.strptime(date_string, "%b-%d-%Y").date()
print(newsdate)

if currentdate == newsdate:
    print("Extra")
else:
    print("Too old")

【讨论】:

  • @Leah 没问题!如果您觉得有帮助,也请随时 accept 回答。
猜你喜欢
  • 1970-01-01
  • 2017-07-28
  • 2012-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-08
  • 1970-01-01
相关资源
最近更新 更多