iT邦幫忙

0

【Python】4.人生就是不斷的選擇:用 if-else 幫電腦裝上大腦

  • 分享至 

  • xImage
  •  

if-else(條件判斷)

加上if-else條件判斷後,程式就擁有了「做決定」的能力,這也是人工智慧(AI)最根本的起點!
今天,就用大白話,聊聊如何幫電腦裝上大腦。

🎢 輕鬆譬喻:if-else 就像遊樂園的驗票員

想像一下,你今天去遊樂園玩一個超級刺激的雲霄飛車,入口處站著一位驗票員(就是電腦)。
驗票員有一套嚴格的規定:「身高滿 140 公分才能進去,不滿 140 公分請去隔壁玩旋轉木馬。」
這段邏輯如果用 Python 寫出來,會長這樣:

height = 150

if height >= 140:
    print("歡迎入場!請繫好安全帶。")
else:
    print("身高不夠喔,我們去隔壁玩旋轉木馬吧!")

這段程式碼包含了寫 Python 條件判斷最核心的兩個秘密,我們來一一拆解。

🔑 秘密一:什麼是布林值(Boolean)?

在 if 後面的那句 height >= 140,叫做「條件式」。

電腦在看這句話時,心裡只會有兩種答案:
• 對(True):真的有滿 140 公分。
• 錯(False):沒有滿 140 公分。

這個非黑即白、非真即假的資料型態,在程式界就叫做 「布林值(Boolean)」。
if 就像是一個現實的關卡,只有當後面的條件算出來是 True 時,它才會放行並執行接下來的程式碼。

💡 常用的小幫手(比較運算子):

• > (大於)、< (小於)
• >= (大於等於)、<= (小於等於)
• == (等於) ⚠️ 注意!程式裡的「等於」是兩個等號! 因為一個等號已經被拿去學「貼便利貼(賦值)」了。
• != (不等於)

📐 秘密二:縮排(Indentation)是公司的部門階級

如果你仔細看上面的程式碼,會發現 print 前面空了四個空格(在 VS Code 裡按下 Tab 鍵就可以自動打出)。這在 Python 裡叫做「縮排」。

很多從其他語言轉過來的人會很不習慣,但這卻是 Python 最優雅的地方。Python 沒有像 Java 或 C++ 那樣使用大括號 {} 把程式碼包起來,而是用「縮排」來決定誰是誰的老大。

🏢縮排的生活小譬喻

請把程式碼想像成一家公司的部門結構:
• if height >= 140: 是一位部門經理。經理的尾巴帶著一個冒號 :,代表「以下是我的管轄範圍」。
• 縮在裡面的 print("歡迎入場!") 是部門員工。

只有當經理(if)答應了(條件為 True),底下的員工才會動手做事。 如果條件是 False,經理沒點頭,底下的員工就只能乖乖待著,什麼都不準做!

⚠️ 新手最常踩的雷

忘記打冒號 :,或者縮排沒有對齊。
Python 對縮排非常嚴格,只要差一個空格,電腦就會直接罷工(跳出 IndentationError)給你看!

🔀情況太多怎麼辦?加開窗口的 elif

人生總不會只有「要」與「不要」兩種選擇。如果遊樂園推出了優待票呢?
「滿 140 公分買全票,110 到 139 公分買半票,110 公分以下免費!」
這時候,我們可以用 elif(Else If 的縮寫)來加開多個篩選窗口:

height = 125

if height >= 140:
    print("請購買全票:200 元。")
elif height >= 110:
    print("請購買半票:100 元。")
else:
    print("免費入場!")

⚠️ 終極注意:電腦是從上到下「排隊檢查」的!

電腦非常死腦筋,它會從第一個 if 開始往下檢查,只要碰到第一個符合(True)的窗口,它進去執行完後,就會直接「跳過後面所有的窗口」!
如果我們把順序寫錯了:

❌ 這是錯誤範例!

if height >= 110:
    print("請購買半票。")
elif height >= 140:
    print("請購買全票。")

當一個 150 公分的人走進來,電腦檢查第一關:150 有沒有大於等於 110?有!於是它就印出「請購買半票」,然後後面就直接不看了。這位大人就平白無故撿到了便宜,而你的老闆要在後面哭暈了。
所以,寫多個條件時,一定要注意邏輯的先後順序喔!

今日結語:你幫電腦裝上大腦了嗎?

今天我們學會了用 if - elif - else 加上「縮排」來控制程式的走向。現在的你,已經有能力寫出一個簡單的邏輯判斷系統了!
接下來我們要來學一個能讓電腦發揮超越人類極限體力的超能力——for / while 迴圈,讓電腦幫我們做重複一萬次也不嫌累的苦工!

🧑💻 今日小作業

試著在 VS Code 裡寫一個「成績判斷器」:
創造一個變數叫 score = 85。
• 如果分數大於等於 90,印出「優秀!」
• 如果分數大於等於 60,印出「及格!」
• 其餘情況印出「再接再厲!」
寫完後改改看變數的分數,觀察看看終端機的變化吧!


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言