iT邦幫忙

2022 iThome 鐵人賽

DAY 5
1
自我挑戰組

Python and LINE Bot系列 第 5

[Day5] input命令、if判斷式

  • 分享至 

  • xImage
  •  

About input命令

input命令的語法為:

變數 = input([提示字串])

input()函式會讓程式暫停,等待使用者輸入資料,使用者輸入的資料會儲存在變數中。「提示字串」是告知使用者要輸入什麼內容,輸入完後按下 Enter 就視為輸入結束。

以下為讓使用者輸入年齡的範例:
https://ithelp.ithome.com.tw/upload/images/20220918/201514489axbgaISs9.png
https://ithelp.ithome.com.tw/upload/images/20220918/20151448t86bO1IfTH.png
輸入完成後按下 Enter ,就會列印出結果
https://ithelp.ithome.com.tw/upload/images/20220918/20151448WyEYcioyrS.png
 
 

About if 判斷式

一. 單向判斷式 ( if... )

「if…」是 if 指令中最簡單的型態,為單向判斷式,語法如下:

if (條件式):  #括號可省略
  程式區塊

當條件式為「True」時,就會執行程式區塊;反之,當條件式為「False」時,就不會執行程式區塊。

舉例來說,計算 1+2+...+100 的數學題目,判斷使用者回答是否正確:
https://ithelp.ithome.com.tw/upload/images/20220918/20151448w9ViFq6fvI.png
https://ithelp.ithome.com.tw/upload/images/20220918/201514487jcdAfPl1P.png
https://ithelp.ithome.com.tw/upload/images/20220918/20151448WQLABqf8br.png

 

二. 雙向判斷式 ( if...else )

if (條件式):  #括號可省略
  程式區塊
else:
  程式區塊

單向判斷式 if 的語法沒有很完整,若使用者輸入錯誤,並不會出現任何訊息。當條件成立或不成立時,應該都要告知使用者,此時就可以使用雙向判斷式 if...else

延續單向判斷式的範例,將算術問題增加條件不成立時的回應:
https://ithelp.ithome.com.tw/upload/images/20220918/201514482OjY8MMmvn.png
https://ithelp.ithome.com.tw/upload/images/20220918/20151448efMcwLUrbF.png

 

三. 多向判斷式 (if...elif...else)

多向判斷式是在多項條件式中選擇一個,當條件式為「True」時,就會執行相對應的程式區塊;如果所有條件都是「False」則執行 else 後的程式區塊。多向判斷式語法為:

if (條件式一):  #括號可省略
  程式區塊
elif (條件式二):
  程式區塊
elif (條件式三):
  程式區塊
  .
  .
  .
else:
  程式區塊

用成績等級來舉個例。將成績分為 A, B, C, D, F 等級,分數大於 90 為 A 級,分數介於 80-89 為 B 級,分數介於 70-79 為 C 級,分數介於 60-69 為 D 級,分數低於 60 為 F 級:
https://ithelp.ithome.com.tw/upload/images/20220918/20151448Ci1B82yof8.png
https://ithelp.ithome.com.tw/upload/images/20220918/20151448O9G35hu9xZ.png

 

四. 巢狀判斷式

巢狀判斷式:判斷式內包含判斷式,要多少層判斷式都可以。

語法為:

if (條件式):  #括號可省略
    if (條件式):
       程式區塊
    elif (條件式):
       程式區塊
    elif (條件式):
       程式區塊
  .
  .
  .
    else:
       程式區塊
else:
  程式區塊

以 BMI 為範例來練習巢狀判斷式。BMI正常範圍介於 18.5~24 (不含 24 ) 這個區間,小於 18.5 為體重過輕,大於等於 24 為過重或肥胖:
https://ithelp.ithome.com.tw/upload/images/20220918/20151448duPA5afHhk.png
https://ithelp.ithome.com.tw/upload/images/20220918/201514480w005GgIgg.png
https://ithelp.ithome.com.tw/upload/images/20220918/20151448F59NobmRNe.png 
 
 
 
 

參考資料:Python初學特訓班、Python程式設計的樂趣第二版、http://depart.femh.org.tw/dietary/3opd/bmi.htm


上一篇
[Day4] 串列
下一篇
[Day6] 迴圈(上)
系列文
Python and LINE Bot30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言