詳解Python if-elif-else知識點(diǎn)
有的時(shí)候,一個(gè) if … else … 還不夠用。比如,根據(jù)年齡的劃分:
條件1:18歲或以上:adult
條件2:6歲或以上:teenager
條件3:6歲以下:kid
Python if-elif-else知識點(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)只會越來越多,代碼也會越來越難看。
要避免嵌套結(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)非常清晰的一系列條件判斷。
特別注意: 這一系列條件判斷會從上到下依次判斷,如果某個(gè)判斷為 True,執(zhí)行完對應(yīng)的代碼塊,后面的條件判斷就直接忽略,不再執(zhí)行了。
請思考下面的代碼:
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
請編寫程序根據(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)文章
python數(shù)組轉(zhuǎn)換為矩陣的方法實(shí)現(xiàn)
本文主要介紹了python數(shù)組轉(zhuǎn)換為矩陣的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Python Pygame實(shí)戰(zhàn)之實(shí)現(xiàn)經(jīng)營類游戲夢想小鎮(zhèn)代碼版
新手如何發(fā)布Python項(xiàng)目開源包過程詳解
pycharm?使用conda虛擬環(huán)境的詳細(xì)配置過程
python實(shí)現(xiàn)通過flask和前端進(jìn)行數(shù)據(jù)收發(fā)

