我在使用 Python 计算当月第一天和今天日期之间的天数时遇到问题?



我想计算当前日期和当前月份第一天之间的天数。如果日期是该月本身的 1 号,那么我的变量(我们称之为 X(应该被分配 1,否则它会计算差值。

我尝试使用Python中可用的busday_count函数,如下所示,但它给了我以下错误

np.busday_count((datetime.date(now.year,now.month,1)), datetime.datetime.now())

错误

类型错误回溯(最近的调用( 最后( 在 ----> 1 np.busday_count((datetime.date(now.year,now.month,1((, now(

类型错误: 迭代器操作数 1 dtype 无法从 dtype('

您可以像这样操作,以获取自月初(包括今天(以来的工作日数:

np.busday_count(np.datetime64('today', 'M'), np.datetime64('today', 'D')) + 1

Zipa的答案只会给你工作日。

如果你想要所有的日子。

使用日期时间库。

from datetime import date
today = date.today()
firstOfMonth = datetime(today.year, today.month, 1)
numOfDays = today - firstOfMonth
print (numOfDays.days + 1)

使用Numpy

from datetime import date
import numpy as np
today = date.today()
firstOfMonth = datetime(today.year, today.month, 1)
days = np.datetime64(today) - np.datetime64(firstOfMonth) + 1

最新更新