我在计算当月第一天到今天之间的天数时遇到问题';用Python写日期?
我想计算当前日期和当月第一天之间的天数。如果日期本身是一个月的第一天,那么我的变量(我们称之为X)应该被赋值为1,否则它会计算差值 我尝试使用Python中可用的我在计算当月第一天到今天之间的天数时遇到问题';用Python写日期?,python,numpy,datetime,Python,Numpy,Datetime,我想计算当前日期和当月第一天之间的天数。如果日期本身是一个月的第一天,那么我的变量(我们称之为X)应该被赋值为1,否则它会计算差值 我尝试使用Python中可用的busday\u count函数,如下所示,但它给出了以下错误 np.busday_count((datetime.date(now.year,now.month,1)), datetime.datetime.now()) 错误 TypeError回溯(最近的调用 最后)在 ---->1 np.busday_计数((datetime.
busday\u count
函数,如下所示,但它给出了以下错误
np.busday_count((datetime.date(now.year,now.month,1)), datetime.datetime.now())
错误
TypeError回溯(最近的调用
最后)在
---->1 np.busday_计数((datetime.date(现在.年,现在.月,1)),现在)
TypeError:无法从中强制转换迭代器操作数1数据类型
数据类型('
您可以这样做,以获得自本月初起的工作日数,包括今天:
np.busday_count(np.datetime64('today', 'M'), np.datetime64('today', 'D')) + 1
客户的回答只会给您提供工作日
如果你想要所有的日子
使用datetime库
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
您的“现在”是如何定义的?如果它是一个月的第一天,您的代码应该返回0(没有日期差异)。