Python基礎實戰100例第3期-判斷閏年


前言:Python是一門需要不斷實踐練習的編程語言,本文檔將AI大學堂學員交流群的Python每周練習進行匯總,希望各位小伙伴能夠多進行實踐練習,逐漸愛上這門神奇的編程語言,掌握它並在生活中能夠使用它。

通過實戰練習,從0到1學會和鞏固Python的各個基礎知識點,以及解題方法和思路,享受Python編程帶來的樂趣。

1 問題描述

閏年(Leap Year)是為了彌補因人為歷法規定造成的年度天數與地球實際公轉周期的時間差而設立的,補上時間差的年份為閏年,閏年共有366天​

請輸入一個年份,判斷輸出是否為閏年

2 解題思路

閏年是歷法中的名詞,分為普通閏年和世紀閏年。
1582年以來設置閏年的規則:
普通閏年:公歷年份是4的倍數,且不是100的倍數的,為閏年(如2004年、2020年等就是閏年)。
世紀閏年:公歷年份是整百數的,必須是400的倍數才是閏年(如1900年不是閏年,2000年是閏年)。​

也就是說
普通閏年:能被4整除,不能被100整除
世紀閏年:能被400整除
在Python中,判斷一個數能否被另一個數整除,可用取模(%)的算法;判斷年份是否為閏年可用if條件語句

3 解題方法

方法一

 

第1行: 用input函數請用戶輸入一個年份,int函數將input()的字符串轉換成整型,並賦值給變量year
第3行: 判斷該年份能否被4整除,不能被4整除,轉到第11行,輸出該年不是閏年
第4行: 若能被4整除,則繼續判斷該年份能否被100整除,不能被100整除,轉到第9行,輸出該年是普通閏年
第5-8行: 若能被100整除,繼續判斷該年能否被400整除,若能被400整除,則為世紀閏年,不能被400整除,則不是閏年

在這里用到了f-string的方法格式化字符串,f是“格式化(format)”的意思,如f"Hello {somevar}",這種f、引號和{}的組合相當於告訴Python:“嘿!這是一個格式化字符串,把這些變量放到那幾個位置”。​

第1期-九九乘法表中我們同樣講解了用format的方法來格式化字符串,忘記了的小伙伴可以查看哦~

方法二

 

第1行: 創建變量year,用input()輸入年份為其賦值
第3-8行: 用if...elif...else語句進行判斷。若該年份可以整除4,但不能整除100,則為普通閏年;若該年份可以整除400,則為世紀閏年;否則,該年份不是閏年

方法三

 

第1行: 創建變量year,用input()輸入年份為其賦值
第3-6行: 將判斷普通閏年和世紀閏年的方法合並,當該年份能被4整除且不能被100整除或能被400整除時,為閏年,否則不是閏年

4 視頻解析

高清視頻講解,請查看AI大學堂Python自學教程,關注訊飛AI大學堂,了解更多Python自學教程(http://www.aidaxue.com)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM