函数main()接收3个整数year、weeks、weekday作为参数,返回year年第weeks个周weekday的日期字符串。使用for循环结构。
def main(year,weeks,weekday):
main(2020, 19, 3)返回'2020-05-06',表示2020年第19个周3的日期是'2020-05-06',main(2022, 1, 7)返回'2022-01-02',表示2022年第1个周日的日期是'2022-01-02'。
from datetime import *
def main(year,weeks,weekday):
t0 = datetime(year,1,1)
tn = datetime(year+1,1,1)
count=0
for i in range((tn-t0).days+1):
t = t0+timedelta(days=i)
if t.isoweekday()==weekday:
count+=1
if count==weeks:break
return t.strftime('%Y-%m-%d')
print(main(2020,19,3))
print(main(2022,1,7))
结果:
2020-05-06
2022-01-02