首页 > 解决方案 > TypeError:'builtin_function_or_method'和'datetime.datetime'的实例之间不支持'<'

问题描述

我收到带有以下代码的 TypeError:

def date_check(datetocheck):
    import datetime
    if datetocheck.date < datetime.datetime.now() - datetime.timedelta(seconds=20):
        print("Go")


def date():
    from datetime import datetime
    # datetime_object = datetime.strptime('Jun 1 2005  1:33PM', '%b %d %Y %I:%M%p')
    datetime_object = datetime.strptime('09.02.19 14:03:34', '%d.%m.%y %H:%M:%S')

    date_check(datetime_object)


date()

我不明白为什么,这两个对象都来自 datime 模块。

更改:datetocheck.date -> datetocheck.date()

现在收到此错误:TypeError: can't compare datetime.datetime to datetime.date

标签: python

解决方案


完全删除 datetocheck.date() 中的 .date,它应该可以工作。

这是因为 datetocheck.date() 仅包含日期信息:datetime.date(2019, 2, 9),并且您无法将其与从 datetime.datetime.now() 获得的日期和时间信息进行比较.


推荐阅读