You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python校验date类型实例触发TypeError错误问题求助

问题产生原因
  • 导入方式导致的指代混淆:你使用from datetime import date, datetime语法完成导入后,代码中的datetime指向的是datetime模块下的datetime类,而非整个datetime模块。
  • 类型引用错误:你在isinstance中传入的第二个参数datetime.date是datetime类的内置方法,并非你要校验的date类型,不符合isinstance第二个参数的类型要求,因此抛出对应报错。
解决方法

有两种常用修复方案,按需选择即可:

方案1:使用已导入的date类型直接校验

既然你已经单独导入了date类型,直接把它作为校验的类型参数即可,修改后函数代码如下:

from datetime import date, datetime
def verify_date_dt(in_date):
    f_date = in_date
    return isinstance(f_date, date)

修改后调用原有测试代码,会正常返回布尔值True。

方案2:调整导入逻辑,通过模块路径引用类型

如果你习惯用模块前缀区分不同类型,可以把导入逻辑改为直接导入整个datetime模块,再通过模块路径引用date类型:

import datetime
def verify_date_dt(in_date):
    f_date = in_date
    return isinstance(f_date, datetime.date)

对应测试代码也需要同步调整前缀:

in_date = datetime.date(2021,4,21)
print(verify_date_dt(in_date))

内容的提问来源于stack exchange,提问作者Premjit Santra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 14:24:07