一天是某年的第幾天,python

由于剛剛學(xué)習(xí)Python,這幾天編寫了一個小小的代碼,如果有什么有問題的地方,請大家多多指教。例題如下:

輸入某年某月某日,判斷這一天是這一年的第幾天。輸入分三行,分別是年、月、日。輸出一行,即該天是這一年的第幾天。

樣例輸入:

2017

1

1

樣例輸出:

1

這是我編寫的代碼:

# -*- coding: utf-8 -*-

def error():#確定報錯函數(shù)

??? print "Invalid input!"

??? exit(0)

def f(x):#判斷閏年

??? if x % 4 != 0:

??????? return 0

??? else:

??????? if x % 100 != 0:

??????????? return 1

??????? else:

??????????? if x % 400 == 0:

??????????????? return 1

??????????? else:

??????????????? return 0

def get_days(m, y):#確定每一個月有幾天

??? days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

??? days[1] += f(y)#對閏年和平年進行統(tǒng)一

??? return days[m-1]

def main():

??? y = int(raw_input("year: "))

??? if (y < 0):#報錯

??????? error()

??? m = int(raw_input("month: "))

??? if (m >= 13) or (m <= 0):#報錯

??????? error()

??? d = int(raw_input("day: "))

??? if (d <= 0) or (d > get_days(m, y)):#報錯

??????? error()

??? ans = 0

??? l = 1

??? while l < m:

??????? ans += get_days(l, y)#按月份累計天數(shù)

??????? l += 1

??? ans += d#將本月的天數(shù)進行累加

??? print ans

if __name__ == '__main__':

??? main()

第一次在簡書上分享自己的代碼,如果有什么不對的地方或更好的解法,還請大家多多提出建議與意見,謝謝!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容