詳解Python if-elif-else知識(shí)點(diǎn)
有的時(shí)候,一個(gè) if … else … 還不夠用。比如,根據(jù)年齡的劃分:
條件1:18歲或以上:adult
條件2:6歲或以上:teenager
條件3:6歲以下:kid
Python if-elif-else知識(shí)點(diǎn)
if age >= 18: print 'adult' else: if age >= 6: print 'teenager' else: print 'kid'
這樣寫出來,我們就得到了一個(gè)兩層嵌套的 if … else … 語句。這個(gè)邏輯沒有問題,但是,如果繼續(xù)增加條件,比如3歲以下是 baby:
if age >= 18: print 'adult' else: if age >= 6: print 'teenager' else: if age >= 3: print 'kid' else: print 'baby'
這種縮進(jìn)只會(huì)越來越多,代碼也會(huì)越來越難看。
要避免嵌套結(jié)構(gòu)的 if … else …,我們可以用 if … 多個(gè)elif … else … 的結(jié)構(gòu),一次寫完所有的規(guī)則:
if age >= 18: print 'adult' elif age >= 6: print 'teenager' elif age >= 3: print 'kid' else: print 'baby'
elif 意思就是 else if。這樣一來,我們就寫出了結(jié)構(gòu)非常清晰的一系列條件判斷。
特別注意: 這一系列條件判斷會(huì)從上到下依次判斷,如果某個(gè)判斷為 True,執(zhí)行完對(duì)應(yīng)的代碼塊,后面的條件判斷就直接忽略,不再執(zhí)行了。
請(qǐng)思考下面的代碼:
age = 8 if age >= 6: print 'teenager' elif age >= 18: print 'adult' else: print 'kid'
當(dāng) age = 8 時(shí),結(jié)果正確,但 age = 20 時(shí),為什么沒有打印出 adult?
如果要修復(fù),應(yīng)該如何修復(fù)?
任務(wù)
如果按照分?jǐn)?shù)劃定結(jié)果:
90分或以上:excellent
80分或以上:good
60分或以上:passed
60分以下:failed
請(qǐng)編寫程序根據(jù)分?jǐn)?shù)打印結(jié)果。
答案
score = 85
if score >= 90:
print 'excellent'
elif score >= 80:
print 'good'
elif score >= 60:
print 'passed'
else :
print 'failed'
相關(guān)文章
Pycharm虛擬環(huán)境創(chuàng)建并使用命令行指定庫的版本進(jìn)行安裝
Pycharm創(chuàng)建的項(xiàng)目,使用了虛擬環(huán)境,對(duì)庫的版本進(jìn)行管理,有些項(xiàng)目的對(duì)第三方庫的版本要求不同,可使用虛擬環(huán)境進(jìn)行管理,直接想通過pip命令安裝可以參考下本文的操作步驟2022-07-07使用numpy實(shí)現(xiàn)矩陣的翻轉(zhuǎn)(flip)與旋轉(zhuǎn)
這篇文章主要介紹了使用numpy實(shí)現(xiàn)矩陣的翻轉(zhuǎn)(flip)與旋轉(zhuǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06Python中使用bidict模塊雙向字典結(jié)構(gòu)的奇技淫巧
bidict模塊通過一對(duì)一映射結(jié)構(gòu)的處理為Pyhton帶來雙向字典,能夠更加利用Python的切片功能,這里我們就來學(xué)習(xí)Python中使用bidict模塊雙向字典結(jié)構(gòu)的奇技淫巧:2016-07-07如何實(shí)現(xiàn)在遠(yuǎn)程linux服務(wù)器上運(yùn)行python代碼
這篇文章主要介紹了如何實(shí)現(xiàn)在遠(yuǎn)程linux服務(wù)器上運(yùn)行python代碼問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12Python+OCR實(shí)現(xiàn)文檔解析的示例代碼
本文是一個(gè)簡單教程,主要介紹了如何使用OCR進(jìn)行文檔解析以及使用Layoutpars軟件包進(jìn)行了整個(gè)檢測和提取過程,感興趣的可以了解一下2022-09-09python中實(shí)現(xiàn)定時(shí)任務(wù)的幾種方案
本文呢給大家總結(jié)以下幾種方案實(shí)現(xiàn)定時(shí)任務(wù),可根據(jù)不同需求去使用不同方案,文章通過代碼示例介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴可以參考下2023-10-10Python寫一個(gè)基于MD5的文件監(jiān)聽程序
這篇文章主要給大家介紹了關(guān)于利用Python如何寫一個(gè)基于MD5的文件監(jiān)聽程序的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03