利用Python计算某年某月某天为这一年中第几天时,如何定义函数

img


如题,在利用Python求解某月某天为该年第几天时,无法得到正确答案,函数定义有些疑惑,如何定义函数求解,此处不是很明白,希望可以得到解答

望采纳,谢谢!


def dayOfYear(y,m,d): 
    months = (0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334)   #把每月的前几个月的天数加起来
    if 0 < month <= 12 and day <= 31:
        sum = months[month - 1]
        sum += day
        leap = 0
        if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):  #判断是否为闰年
            leap = 1
        if (leap == 1) and (month > 2):
            sum += 1
        print('这是%s年的第%s天' % (year, sum))
year = int(input('year:\n'))      #输入年、月、日
month = int(input('month:\n'))
day = int(input('day:\n'))

dayOfYear(year,month,day)

img