python选择结构与循环结构

问题遇到的现象和发生背景

函数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