Python 如何确定一周中某一天的日期?
给定Python 如何确定一周中某一天的日期?,python,datetime,calendar,Python,Datetime,Calendar,给定2月和6(Python中表示星期日的整数),如何获取2月第一个星期日的具体日期?我知道如何知道今天是否是星期天(import datetime today=datetime.date.today()),但我希望程序几乎可以反向运行 示例代码: date=datetime.date.toDate(日、月、年、哪周) date=datetime.date.toDate(2021年2月6日,0日)#2021年2月1日星期日,第一周 示例输出: 2月7日(作为今年的一个例子)。一个想法是计算给定月份
2月
和6
(Python中表示星期日的整数),如何获取2月第一个星期日的具体日期?我知道如何知道今天是否是星期天(import datetime today=datetime.date.today()
),但我希望程序几乎可以反向运行
示例代码:
date=datetime.date.toDate(日、月、年、哪周)
date=datetime.date.toDate(2021年2月6日,0日)#2021年2月1日星期日,第一周
示例输出:
2月7日(作为今年的一个例子)。
一个想法是计算给定月份第一天的工作日。然后为指定的工作日添加计算出的天数。2019年2月3日为第一个星期日:
from datetime import date, timedelta
def get_date(month, year, day_num):
"""Get date of first specified day given month and year."""
first_date = date(year, month, 1)
first_day = first_date.weekday()
day_inc = day_num + (7 if first_day > day_num else 0) - first_day
return first_date + timedelta(days=day_inc)
date = get_date(2, 2019, 6) # 6 represents Sunday
# datetime.date(2019, 2, 3)
你能举一个输入和预期输出的例子吗?你可以看到一个月的第一天是星期几,对吗?在那之后我应该很放松。如果第一天是星期五,你就会知道星期天是第三天。这个问题可以重新讨论吗?我有我需要的答案,但是问题已经被编辑成更加集中。