上節練習詳解:上節練習中,我們提到了如果輸入不是C或者F時應該怎麼辦?其實我們完全可以再設置一個條件語句,當我們檢查到輸入不是C或者F時,我們就輸出一個提示錯誤的符號就可以了:


我們可以看到當我們輸入M開頭的字符的時候,提示我們是一個錯誤的輸入。這樣就可以完美的解決我們的問題啦!
在上一講的內容中,我們對if條件語句做了一些基本的介紹。我們經常需要在條件測試通過的時候執行一個操作,並在沒有通過時執行另外一個操作:在這種情況下,我們就可以使用python提供的if-else語句。if—else語句塊類似於簡單的if語句,但是其中的else語句讓我們能夠指定條件未通過時要執行的操作。下面讓我們嘗試寫一下,當一個人夠投票年齡的時顯示與前面相同的消息,同時在這個人不夠投票年齡的時候也顯示一條消息:


當不滿足if語句之後的條件時,python將轉向執行else之後的語句塊。
2.if-elif-else語句
我們經常需要檢查超過兩個條件的情形,為此我們可以使用python提供的if-elif-else結構。python只執行if-elif-else結構中的一個代碼塊,它依次檢查每個條件測試,直到遇到了通過的條件測試。測試通過後,python將執行緊跟在它後面的代碼,並跳過餘下的測試。
在現實世界中,很多情況需要考慮的情形都超過兩個。例如,來看一個根據年齡段收費的遊樂場:
1.4歲一下免費;
2.4-18歲收費5美元;
3.18歲(含)以上收費10美元。
我們可以根據自己的理解寫出代碼,比如:設置一個孩子的年齡為age=12,那麼我們可以得到:

我們這邊的代碼if測試檢查一個人的年齡是否不滿4歲,如果是這樣,我們就讓python列印一條合適的消息,並跳過餘下的測試。而elif代碼行其實是另外一個if測試,它僅在前面的測試未通過時才會運行。在這裡我們知道這個人不小於4歲,因為第一個測試沒有通過。如果這個人未滿18歲,python將列印對應的消息,並跳過else代碼塊。如果if測試和elif測試都沒有通過,python將運行else後面的代碼塊。在我們上面的這個例子中,因為age不滿足if後面的條件,因此跳過了if後的語句,轉而檢查是否滿足elif後的條件,經檢查滿足elif後的條件,因此我們執行了elif後面的語句塊,並且輸出了門票的價格為$5。
3.使用多個elif語句塊
我們可以根據我們的需要使用任意數量的elif語句,假設我們再設置一個界限如果大於60歲的人,我們也將針對他免費,因此我們可以這樣編寫我們的代碼。


由此我們可以知道,可以任意根據我們的需求添加elif語句塊!
本節練習:你是班級的班長,現在老師要求你給班級的學生成績打A、B、C、D、E五個等級,現在假設你的成績是95分 。我們將90分以上的設定為A,80-90之間設定為B,70-80之間設定為C,60-70之間設定為D,60分以下設定為E。請你幫老師完成這個任務吧!