《Python 學習筆記》 — 條件判斷與布林值 (上)

條件判斷、布林值、比較運算符的介紹…

Frankie
CodingBar
5 min readFeb 14, 2019

--

文/Frankie

前言

在進入我們這次的主題「條件判斷與布林」之前,我們先來想一想什麼是條件判斷。其實在我們的生活中處處可見「條件判斷」的影子,因為我們一直在做各式各樣的「選擇」。

為什麼這麼說呢?其實條件判斷就是依據特定的條件去做選擇。例如:「今天如果會下雨,我出門就要帶傘。」。用更程式化的角度來看:「如果你要出門,就要經過判斷是否該帶傘的環節,如果滿足會下雨的條件就帶傘,沒有滿足條件就不帶」。

在上面的例子中,是否有下雨就是我們判斷「有沒有滿足」的條件。生活中類似的例子有超級多,現在也請你依樣畫葫蘆,想出一個生活中的條件判斷應用吧!

布林 Boolean

布林值是什麼呢?這種資料型態只有兩種結果,那就是「是」或「否」,也就是 True or False。之前的文章中有提過,布林也是一種資料型態(和整數、浮點數、字串一樣地位),他也能被assign (指派) 到變數當中。

舉個例子:今天有一個變數叫 isRaining ,如果現在正在下雨的話,我們就把 True 指派給他,如下:

否則把 False 指派給他:

條件 與 比較運算符

接下來我們來討論一下「條件」是什麼。在條件判斷中,我們所判斷的「條件」其實都代表著一個布林值,可以想像成條件等於一個布林值,再次舉個例子:

上面的範例看不懂沒關係,待Bar主娓娓道來。第一行程式碼,我們定義了一個變數 weather,並將字串 ’rainy’ 指派給他。

第二行程式碼出現了 ===,差別在哪呢?切記,程式中的等號和我們生活應用的數學是不一樣的,程式中的一個等號代表的是「將右邊的值指派到左邊」,就像是把右邊的東西放到左邊的動作。

某種意義上,數學裡的等號和程式中的兩個等號比較相似。

==到底是在做什麼的呢?其實他是「比較運算符」的一種,和大於小於同地位,如果今天我要比較 a 是否大於 b ,並顯示出來,大概會長這樣:

當然,直接執行的話會出錯,因為a和b尚未定義。
如果要比較 a 是否等於 b 呢?這時就要用到 == 了:

由上可以發現,輸入諸如 4>3 或 'a' == 'a' 之類的程式碼,是可以print出結果的,當然也能指派進變數中(如上面的 isRaining = weather == ‘rainy’)

常見的比較運算符 !=

和數學類似的比較運算符諸如 >,<,>=,<= 等等,在Python中都是可以使用的,比較特別的是比較是否相等的==,以及比較是否不相等的「!=」

為什麼要特別去比較是否「不相等」呢?原因很簡單,因為有時候比較是否不等於會較符合我們人的邏輯思考,例如:

一樣的東西還能改成:

if … else … 語句

上面的例子是什麼構造?首先我們先來看看條件判斷的基本語法:

很直觀吧!需要注意的是,條件後面必須要加冒號 「:」,且換行後必須要進行縮排的動作,也就是空四個半行空白(有些編輯器能有一個tab鍵代替)。

--

--