告诉我为什么在比较日期时间库中的日期时会显示错误的结果?
import datetime as dt
d = dt.datetime.now().strftime('%d.%m.%Y')
ddate = dt.date(3000, 7, 5)
dd = ddate.strftime('%d.%m.%Y')
print(d)
print(dd)
print(dd > d)
不是比2020多3000吗?
告诉我为什么在比较日期时间库中的日期时会显示错误的结果?
import datetime as dt
d = dt.datetime.now().strftime('%d.%m.%Y')
ddate = dt.date(3000, 7, 5)
dd = ddate.strftime('%d.%m.%Y')
print(d)
print(dd)
print(dd > d)
不是比2020多3000吗?
您也将格式转换
datetime.datetime
为datetime.date
字符串(这是该方法所做的strftime
),然后比较它们。当然,字符串09.11.2020
大于字符串05.07.3000
。您需要直接以日期时间格式比较数据:
更新
如果最初给您一个字符串,则将其转换为 dateimte 格式并进行比较: