【Python自學】條件語句if/else,以及elif多條件語句的用法

這篇簡單筆記 Python 中的 if / else 用法,並透過幾個小案例理解條件判斷,最後再實作一個簡易計算機程式。

📘 Python if / else 條件判斷

在寫程式時,我們常常需要讓程式根據不同情況做不同事情。這時候就會用到 if / else 條件判斷。

簡單來說,if 就是「如果」,else 就是「否則」。如果條件成立,就執行某段程式;如果條件不成立,就執行另一段程式。

🧭 1. if / else 的用途

if / else 用來判斷條件,根據條件是否成立,決定程式要走哪一段。

條件成立時執行 if 區塊;條件不成立時執行 else 區塊。

這個概念其實很直觀,像日常生活也常出現類似判斷:

  • 如果下雨,就帶傘。
  • 如果成年,就可以進入。
  • 如果分數達標,就及格。
  • 否則,就執行另一個結果。

🧩 2. 基本語法

Python 的 if / else 基本語法如下:

if 條件: # 條件成立 True 時會執行這裡 else: # 條件不成立 False 時會執行這裡

if / else 的判斷結果通常會是布林值,也就是:

  • True:條件成立。
  • False:條件不成立。
Python 很重視縮排。
ifelse 後面的程式碼必須縮排,否則可能出現 IndentationError

🧪 3. 基本例子:成年人可以進入

先來看一個很常見的年齡判斷案例。

age = 20 if age >= 18: print("你已成年,可以進入。") else: print("未成年,禁止進入。")

判斷邏輯

age >= 18 → True → 印出「你已成年,可以進入。」 age < 18 → False → 印出「未成年,禁止進入。」

程式執行結果

你已成年,可以進入。

這個例子就是最典型的 if / else:如果年齡大於等於 18,就顯示成年;否則顯示未成年。

🔀 4. 加上 elif:多條件判斷

當條件不只兩種時,可以使用 elif

elif 可以理解成 else if,意思是「否則如果」。

score = 75 if score >= 90: print("A 等級") elif score >= 80: print("B 等級") elif score >= 70: print("C 等級") else: print("需要加油喔")

程式執行結果

C 等級

因為 score = 75,不符合 score >= 90,也不符合 score >= 80,但符合 score >= 70,所以印出 C 等級

elif 可以讓多重判斷更簡潔。程式會從上往下檢查,只要遇到第一個成立的條件,就執行該區塊,後面就不再繼續判斷。

🔤 5. 判斷字串例子

條件判斷不只可以用在數字,也可以用在字串。

name = "阿元" if name == "阿元": print("歡迎回來!") else: print("你是新朋友嗎?")

程式執行結果

歡迎回來!

這裡使用 == 判斷兩個字串是否相等。

=== 不一樣。
= 是指定變數;== 是判斷是否相等。

⌨️ 6. 判斷是否有輸入

在 Python 中,空字串 "" 會被視為 False,非空字串會被視為 True

item = input("輸入一些內容吧!") if item: # 字串不為空 → True print("你輸入的是:", item) else: print("你沒有輸入內容喔")

情境 1:使用者有輸入內容

輸入一些內容吧!Hello, I am Yuan. 你輸入的是: Hello, I am Yuan.

情境 2:使用者直接按 Enter

輸入一些內容吧! 你沒有輸入內容喔

這個寫法很常用在檢查使用者是否有輸入資料。

🧮 簡易計算機程式

接下來,我們來寫一個簡易計算機程式,讓使用者輸入三個資料:

  • 運算符號:加、減、乘、除,也就是 + - * /
  • 數字 1:第一個要運算的數字。
  • 數字 2:第二個要運算的數字。

程式會根據使用者輸入的運算符號,決定要進行哪一種計算。

這個練習的目的,是熟悉 if / elif / else 的條件判斷流程。

完整程式碼

# 簡易計算機程式 operator = input("please input operator: ") number1 = float(input("please input number1: ")) number2 = float(input("please input number2: ")) if operator == "+": print(number1 + number2) elif operator == "-": print(number1 - number2) elif operator == "*": print(number1 * number2) elif operator == "/": print(number1 / number2) else: print("不支援的運算符號")

程式執行結果:加法

please input operator: + please input number1: 3 please input number2: 4 7.0

程式執行結果:減法

please input operator: - please input number1: 5 please input number2: 6 -1.0

程式執行結果:乘法

please input operator: * please input number1: 3 please input number2: 4 12.0

程式執行結果:除法

please input operator: / please input number1: 8 please input number2: 4 2.0

🔎 計算機程式邏輯說明

這個計算機的核心是根據 operator 的值,決定要做哪一種運算。

輸入符號 判斷條件 執行運算
+ operator == "+" 加法
- operator == "-" 減法
* operator == "*" 乘法
/ operator == "/" 除法
其他 else 顯示不支援的運算符號
目前這個簡易版本還沒有處理「除以 0」的狀況。
如果使用者在除法時輸入 number2 = 0,程式會出現 ZeroDivisionError

🔧 小改良:避免除以 0

我們可以在除法判斷中再加一層條件,避免使用者輸入 0 當除數。

operator = input("please input operator: ") number1 = float(input("please input number1: ")) number2 = float(input("please input number2: ")) if operator == "+": print(number1 + number2) elif operator == "-": print(number1 - number2) elif operator == "*": print(number1 * number2) elif operator == "/": if number2 == 0: print("除數不可為 0") else: print(number1 / number2) else: print("不支援的運算符號")

這樣當使用者輸入除法,且第二個數字是 0 時,程式就會提示「除數不可為 0」,而不是直接報錯。

📋 if / elif / else 速查表

最後用表格整理三個關鍵字的用途。

語法 意思 使用情境
if 如果 第一個要判斷的條件。
elif 否則如果 有多個條件時使用。
else 否則 前面條件都不成立時執行。

✅ 小結

if / else 是 Python 中最基本、也最常用的流程控制語法。只要程式需要根據條件做出不同反應,就會用到它。

  • if:條件成立時執行。
  • else:條件不成立時執行。
  • elif:用於多條件判斷。
  • 布林值:條件判斷的結果通常是 TrueFalse
  • 縮排:Python 用縮排決定程式區塊。
  • ==:用來判斷是否相等。
  • 計算機案例:透過運算符號決定要執行哪一種計算。
if 條件成立: 執行這裡 elif 其他條件成立: 執行另一段 else: 前面都不成立時執行這裡
最後用一句話記住:
if / else 就是讓程式學會「看情況做決定」。

留言

這個網誌中的熱門文章

麻將新手必看!不知道聽什麼牌怎麼辦?超多種實戰聽牌範例,教你怎麼判斷胡牌機會

麻將教學懶人包|從規則到牌理的完整觀念整理(附實戰心得)

【新訓入伍】義務役新兵必看!入伍報到必備清單整理|2026年更新