我想知道过去四个月的第一次和最后一次约会。我尝试了以下概念
@staticmethod
def getDateRangeByMonth(year, month):
"""
:param year:
:param month:
:return:
"""
if year is None:
today = datetime.today()
year = today.year
if month is None:
today = datetime.today()
month = today.month
_, num_days = calendar.monthrange(year, month)
since = datetime.datetime.strptime(str(datetime.date(year, month,
1)), "%Y-%m-%d")
till = datetime.datetime.strptime(str(datetime.date(year, month,
num_days)), "%Y-%m-%d")
return since, till
for i in range(0,4):
today = datetime.today()
since, till = getDateRangeByMonth(today.year, today.month - i)
我知道当过去的一个月与前一年交叉的时候,这个概念就会下降,比如如果这个月是1月或2月,那么这一年就必须改变了。在
如何改变这个或者我在这个问题上出了什么问题
提前谢谢
在下面的代码中,诀窍是datetime模块提供}来获取月份的第一天。这里有一个简单的函数:
timedelta
提前一天执行步骤,并提供{使用示例:
^{pr2}$显示这很容易跳过一年的界限。。。在
下面是一个修改后的函数,它为您提供所需的前几个月的开始日期和结束日期:
我已经把
datetime.today()
改成了datetime.date.today()
,因为这就是我的工作方式,你应该把它改回来。在相关问题 更多 >
编程相关推荐