從0開始學Python:if-else條件語句怎麼用?實例講解

在編程中,我們經常需要讓程序根據不同的情況做出不同的選擇。比如“如果下雨,就帶傘;如果不下雨,就不帶傘”,這種“根據條件執行不同操作”的邏輯,在Python中通過if-else條件語句實現。

一、爲什麼需要if-else?

想象一下,如果沒有條件語句,程序只能按固定順序執行代碼,無法應對複雜場景。比如:
- 判斷一個數字是正數還是負數;
- 檢查成績是否及格;
- 根據天氣決定是否穿外套。

這些場景都需要程序“先判斷條件,再決定做什麼”,而if-else就是實現這種邏輯的核心工具。

二、if-else的基本語法

Python的if-else語句用縮進表示代碼塊(同一條件下要執行的操作),語法結構如下:

if 條件:
    # 條件成立時執行的代碼(縮進4個空格或1個Tab)
    操作1
elif 另一個條件:  # 可選,可多個
    # 第一個條件不成立,第二個條件成立時執行
    操作2
else:
    # 所有條件都不成立時執行
    操作3

關鍵點
- 冒號(:):每個條件後面必須加冒號,表示接下來是縮進的代碼塊; - **縮進**:Python通過縮進來區分代碼塊,通常用4個空格縮進(不要用Tab,避免混亂); - **條件判斷**:條件是一個“真(True)”或“假(False)”的表達式,比如x > 5` 會返回True或False。

三、基礎用法:if語句

場景:只判斷一個條件,滿足就執行,不滿足就跳過。

示例1:判斷數字是否大於5

# 定義一個變量
num = 7

# 如果num大於5,執行下面的代碼
if num > 5:
    print("這個數字比5大!")  # 縮進的代碼塊
    print("因爲7確實大於5~")  # 同一縮進下的多個操作

# 如果條件不成立,這裏不會執行
print("結束判斷")  # 無論條件是否成立,都會執行

運行結果

這個數字比5大!
因爲7確實大於5~
結束判斷

條件表達式>(大於)、<(小於)、==(等於,注意是兩個等號,不是一個!)、!=(不等於)、>=(大於等於)、<=(小於等於)。

四、二選一:if-else語句

場景:兩個條件二選一,滿足第一個條件執行A,否則執行B。

示例2:判斷成績是否及格

score = 75

if score >= 60:  # 如果分數≥60
    print("恭喜!你及格了!")
else:  # 如果分數<60
    print("很遺憾,你沒及格~")

運行結果

恭喜!你及格了!

如果 score = 55,結果會是“很遺憾,你沒及格~”。

五、多條件判斷:if-elif-else

場景:多個條件需要逐個判斷,滿足第一個符合的條件就執行,後續條件不再判斷。

示例3:成績等級劃分

score = 85

if score >= 90:       # 先判斷是否≥90
    print("優秀")
elif score >= 80:     # 否則判斷是否≥80
    print("良好")
elif score >= 60:     # 否則判斷是否≥60
    print("及格")
else:                 # 所有條件都不滿足
    print("不及格")

運行結果

良好

注意:條件是從上到下依次判斷的,一旦某條件成立,就不再執行後續判斷。比如 score=95 會被第一個條件(≥90)匹配,不會執行後面的 良好

六、常見問題與解決方法

  1. 忘記寫冒號:每個條件後面必須加冒號(:),否則會報錯;
  2. 縮進錯誤:Python嚴格依賴縮進來區分代碼塊,縮進不一致會導致IndentationError
  3. 條件順序錯誤:比如先判斷“及格”再判斷“優秀”,會導致“優秀”永遠無法被識別(見示例3的反例);
  4. 比較運算符誤用:比如用 =(賦值)代替 ==(判斷等於),會導致邏輯錯誤。

七、綜合練習

題目:根據輸入的整數,判斷它是正數、負數還是零。

# 輸入一個整數
num = int(input("請輸入一個整數:"))

if num > 0:
    print(f"{num}是正數")
elif num < 0:
    print(f"{num}是負數")
else:
    print(f"{num}是零")

運行示例

請輸入一個整數:-3
-3是負數

總結

if-else條件語句是Python中最基礎也最常用的邏輯控制工具,核心是通過條件判斷讓程序“智能決策”。記住以下幾點:
- 用冒號(:)結尾,縮進表示代碼塊; - 二選一用if-else,多條件用if-elif-else; - 條件判斷**從上到下**執行,先判斷的條件會優先生效; - 注意比較運算符(==><等)和邏輯運算符(andornot`,後續會講)的正確使用。

通過簡單的例子多練習,很快就能熟練掌握if-else的用法啦!

小夜