此为历史版本和 IPFS 入口查阅区,回到作品页
緯緯道來
IPFS 指纹 这是什么

作品指纹

Python 中的 Boolean Operator (1)

緯緯道來
·
·

前言 & 概述

本篇為 Python 程式語言入門教學的第 5 篇文章!在前一篇文章中,我們成功撰寫了第一個 Python 程式,一個能夠與使用者互動的 Python 程式。然而,目前的互動性仍然有些不足,我們希望程式可以根據使用者不同的輸入,進行不一樣的處理,變得更有彈性。

程式中的流程控制 (Control Flow)

實際上,「讓程式根據不同的狀況 (輸入),採取不同的行為」就是一種「流程控制」的概念。相信你一定對流程控制的概念不陌生!我們以下圖這張流程圖為例:

source: Automate the Boring Stuff with Python

我們從「Start」出發,首先遇到了「Is raining?」的判斷,如果是「Yes」則前往「Have umbrella?」、如果是「No」則前往「Go outside.」。「Have umbrella?」也是同樣的道理。如果是「Yes」會前往「Go outside」、如果是「No」則會前往「Wait a while.」。

由此我們可以發現,因為在流程圖中多了「Is raining?」、「Have umbrella?」這些判斷的時刻,使得我們從「Start」走到「End」可以有多種不同的選擇。

為了撰寫出更具有互動性的程式,我們可以將「流程控制」的觀念寫入程式中,讓程式能夠因應不同的狀況,採取不同的行爲。

布林資料類型

在學習撰寫 Python 中控制流程的語法 (Control Flow Statement) 之前,我們必須先瞭解如何在程式中表示流程圖中的「Yes」與「No」。

在流程圖中出現「Is raining?」(現在下雨嗎?) 只會有兩種結果,不是「Yes」就是「No」。

在一般常見的程式語言中,有一種資料類型稱為「布林」(Boolean),Boolean 資料類型的數值只有兩種「True」與「False」。「True」就是代表「Yes」、「False」就是代表「No」。

到目前為止,我們已經接觸了 4 種資料類型,分別是:整數 (Integer)、浮點數 (Floating-Point)、字串 (String) 與布林 (Boolean)。

在 Python 中,建立一個 Boolean 變數也相當簡單,只需要設定這個變數的數值是 True 或是 False。

x = True
y = False

「比較」運算子

接著,我們要理解的是程式中的「比較」運算子 (Comparison Operator)。相信你也對這個東西不陌生!生活中常見的 Comparison Operator 有:「等於」、「不等於」、「大於」、「小於」、「大於或等於」與「小於或等於」。

在 Python 程式中的對照寫法如下圖所示:

比較運算子會接受兩個數值,並回傳一個結果,這個結果不是「True」就是「False」。因此,比較運算子所回傳的結果就是一個 Boolean。 我們可以在 Colab 中撰寫以下程式碼並執行。

1 == 2


10 <= 20


20-1 != 19


'apple' == 'apple'

可以發現執行的結果不是「True」就是「False」。

「==」vs 「=」

在上面的「比較運算子」中,我們看到了比較兩個數值是否相同是使用「兩個等號」( == )。千萬不能將「==」與「=」兩種搞混在一起!

  • ==:是用來詢問兩個數值是否相同
  • :是用來將右邊的數值 (Value) 寫入 (Assign) 到左邊的變數 (Variable)

我們可以用簡單的方式來記憶,「詢問兩個數值是否相同」與「詢問兩個數值是否不相同」都是使用兩個符號,分別是「==」與「!=」。

結語

在本篇文章中,我們學習了程式語言中布林 (Boolean) 資料類型,並瞭解到什麼是比較運算子 (Comparison Operator)。在 Python 中的 Boolean Operator (2) 中我們會再學習布林運算子 (Boolean Operator) 以及兩種運算子的混合使用。這些都是流程控制語法 (Control Flow Statement) 的基本元素。


👣 👣 👣 我喜歡撰寫程式開發、資料科學領域相關的文章,希望可以透過簡單的文字解釋複雜的觀念!如果你也有興趣可以到我的其他平台逛逛哦!
👉🏻 DataSci Ocean
👉🏻 YouTube
👉🏻 Instagram


系列文章

01 - Google Colaboratory 介紹
02 - Python 中的加減乘除
03 - Python 中的變數與資料類型
04 - 第一個 Python 程式


延伸閱讀

👉🏻 條件機率 vs 聯合機率
👉🏻 將 Django App 部署到 Heroku on Mac
👉🏻 在 LINE Developers 上建立 LINE Bot
👉🏻 原來「機率」是這麼一回事!

CC BY-NC-ND 2.0 授权