python - 类型错误:无法将 datetime.datetime 与 datetime.date 进行比较
问题描述
我有以下代码
minDate = date(9999, 12, 31)
start = event.get('dtstart').dt
if isinstance(start, datetime.datetime):
newStart = start.date()
else:
newStart = start
if(newStart < minDate):
minDate = start
为什么我在比较的两端都转换为日期时收到此错误
解决方案
它们不是同一类型。从文档:
class datetime.date - 一个理想化的朴素日期,假设当前的公历一直有效,并且永远有效。属性:年、月、日。
类 datetime.datetime - 日期和时间的组合。属性:年、月、日、时、分、秒、微秒、tzinfo
您需要在此处减轻比较:
if(newStart < minDate):
类型在哪里minDate
,是date
newStart
dateTime
推荐阅读
- swift - 如何使用 WatchKit 从自定义 TableRow 导航到 InterfaceController?
- stderr - 错误流重定向的 2>&1 和 >/dev/stdout 之间的区别
- vue.js - 如何在 Vue/Nuxt 中获取调用事件的组件?
- .net - Regex.Replace 回调 - 从匹配组中获取字典键
- azure-cosmosdb - 基于分区键的记录数 - 是否有最大值/最小值
- r - 使用dplyr跨多个列的条件总和?
- selenium - Selenium Grid 4 会话未反映
- python - 无法创建导入所有库的已定义函数
- docker - 为什么我的 GitLab 构建失败并出现错误:“$PATH 中找不到可执行文件”
- google-bigquery - BigQuery:获取特定行之前的所有行