python - 只比较今天的日期,没有小时/分钟/秒
问题描述
我想将今天的时间与另一个没有小时/分钟或秒的新时间进行比较。忽略小时和分钟...
换句话说,如果无论是小时还是分钟,这两天都是一样的,那没关系(额外),否则不好(太旧)......我试过但即使在同一天仍然继续与小时/分钟和秒进行比较. 我该怎么做?
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()
属性访问:
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")
推荐阅读
- python - 检测 Python 请求是否支持 SOCKS 代理的正确方法是什么?
- prolog - CLP(FD) 可变域和传播
- php - PHP cURL 不返回响应,POSTMAN 返回响应
- powerbi - 如何创建一个仅根据每个人的最后交易日期计算最后状态的度量。电源 BI
- laravel - 向 Laravel 身份验证控制器添加邀请功能
- javascript - 在我正在尝试制作的 javascript 计算器中获取“app.js:44 Uncaught TypeError: btn.addEventListener is not a function”
- c# - TCP 是否区分发送几条小消息和一条大消息?
- javascript - JS IE 错误(对象不支持属性或方法“选择”)
- sql - 从数据库中删除样式 (SQL Server)
- sql - 如何将备忘录字段的前缀与postgresql中的短文本字段进行比较?