Python生成星期六到星期五的日期范围

2024-09-28 22:27:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我要求每周运行一份报告,一周从星期六开始到星期五结束。但是,由于datetime或calendar模块的周从周一开始,所以我不能使用WEEKDAY选项。在

我尝试了下面的选项,但是它仍然给我5星期六,有没有任何选项可以将weekstart day设置为周六,这样周六的值为0?这样我就可以从当前日期减去它,得到所需的日期或任何其他解决方法来获得相同的结果

如果我在8月30日运行报告,它应该会获取8月18日至8月24日的数据

import calendar
calendar.setfirstweekday(calendar.SATURDAY)
calendar.firstweekday()
5

Tags: 模块数据方法importdatetime选项报告calendar
2条回答

感谢帖子Python: give start and end of week data from a given date根据我的需要稍微修改了一下

dt = datetime.now()
start = (dt - timedelta(days = (dt.weekday() + 2) % 7))  - timedelta(days=7)
end = (start + timedelta(days=6))
print(start.strftime("%Y-%m-%d"))
print(end.strftime("%Y-%m-%d"))

星期六给你5分,因为0是星期一。在

>>> calendar.setfirstweekday(calendar.MONDAY)
>>> calendar.firstweekday()
0

相关问题 更多 >