Python strftime(“%A”)&x9;输出为字符串。但赋值变量应为Int

Python strftime(“%A”)&x9;输出为字符串。但赋值变量应为Int,python,Python,我正在将日期转换为每月的某一天。 当我执行时,我得到以下错误 File ".\date.py", line 8, in <module> ans=datetime.date(year,month,date) TypeError: an integer is required (got type str) 文件“\date.py”,第8行,在 ans=datetime.date(年、月、日) TypeError:需要一个整数(获取类型str) 我不理解这个错误。返回类型

我正在将日期转换为每月的某一天。 当我执行时,我得到以下错误

  File ".\date.py", line 8, in <module>
    ans=datetime.date(year,month,date)
TypeError: an integer is required (got type str)
文件“\date.py”,第8行,在
ans=datetime.date(年、月、日)

TypeError:需要一个整数(获取类型str)
我不理解这个错误。返回类型按预期为Str。 我没有声明为int。 我正在使用Python3,不明白为什么它会抱怨日期类型。

有两个问题

首先,要获取月份的日期,您应该使用
%d
,而不是
%A
strftime()

其次,它以字符串形式返回日期,而不是以整数形式返回,但
datetime.date()
要求其参数为整数,因此需要使用
int(date)


但实际上,首先没有必要使用
strftime()
。如果您有一个
date
对象,只需访问其
day
属性即可获取当月的日期。

%a
返回一周中的某一天,如
星期四
。如何将其用作整数?是的,这是我的问题…不明白为什么它抱怨它需要整数。TypeError:需要整数(Get type str)是我获取的错误日期()的参数应该是数字,而不是字符串。有什么让人困惑的?你能分享你传递给函数的参数吗?
date = time.strftime("%d");
date = int(time.strftime("%d"))