TypeError: descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object 类型错误:'datetime.datetime' 对象的描述符 'date' 不适用于 'int' 对象

13 浏览
0 Comments

TypeError: descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object 类型错误:'datetime.datetime' 对象的描述符 'date' 不适用于 'int' 对象

我刚刚遇到了这个问题,在谷歌的首页上没有找到合理的答案。这类似于2011年提出的这个问题,但是针对的是较新版本的Python,导致了不同的错误信息。

是什么导致了这些TypeError错误?

整数

import datetime
my_date = datetime.datetime.date(2021, 3, 2) 

导致错误:

TypeError: 'datetime.datetime'对象的描述符'date'不适用于'int'对象

字符串

同样,将整数替换为字符串也会导致相同的错误:

import datetime
my_date = datetime.datetime.date("2021", "3", "2") 

导致错误:

TypeError: 'datetime.datetime'对象的描述符'date'不适用于'str'对象

列表

使用列表也会导致相同的错误:

import datetime
my_date = datetime.datetime.date([2021, 3, 2]) 

导致错误:

TypeError: 'datetime.datetime'对象的描述符'date'不适用于'list'对象

同样地,使用from datetime import datetimedatetime.date会分别产生以下错误信息:

TypeError: 'datetime'对象的描述符'date'不适用于'int'对象

TypeError: 'datetime'对象的描述符'date'不适用于'str'对象

TypeError: 'datetime'对象的描述符'date'不适用于'list'对象

0