[python筆記] 2.五個要素之四 – 操作(運算)

前言:

繼 1.五個要素之一二三 – 輸入、輸出與記憶,接著來看學習一個新的程式語言的開始(上),裡面的五個要素之操作單元,也就是python的運算。
python的運算有六種分類,我們只取其中四種常用的來學習就好,剩餘兩種少用的在需要的時候再去學習。
python的六種運算:

  • 指派運算
  • 算術運算
  • 比較運算
  • 邏輯運算
  • 位元運算
  • 位移運算

我們只學常用的前面四項。

閱讀時間:10 分鐘

運算子、運算元與運算符

在程式裡面,運算會有專業的術語來稱呼,所以先簡單的認識一下這三種的區別。
這樣在與其他人討論或學習的時候,比較能夠明確的知道對方或文章的表達。

運算子簡單明白為運算式,英文會使用 operator。

運算元就是組成運算子的「元」件,可以是變數、數字或是符號。

運算符是運算式裡面的「符」號。例如:加法裡面的加號,就是算術運算子的運算符。

來饒舌一下,運算元構成運算子,運算符是一種運算元。數字也是一種運算元。
既然了解了運算子,之後的標題就以運算子取代運算兩個字。

指派運算子

就是賦值中的等於。

a=1    # =就是指派運算子的關鍵字(運算符)

算術運算子

簡單理解為數字的運算使用的運算式,也就是加減乘除那一類的。

算術運算子範例說明
+a+bAddition 
a-bSubtraction 
*a * bMultiplication 
**a ** bExponents
/25/4=6.25Division
//25//4=6Division for Int
%25%4=1Remainder
有時候會把運算子中的關鍵字會直接作為運算子稱呼。

算術運算子有個變形的寫法:
a+=b 相當於 a=a+b

比較運算子

用於比較資料,比較運算子的結果為錯(False)與對(True)。

比較運算子範例說明
>2 > 1 => Truegreater than
<2 < 1 => Falseless than
==2 == 1 => Falseequal to
!=2 != 1 => Truenot equal to
>=2 >= 1 => Truegreater than or equal to
<=2 <= 1 => Falseless than or equal to

比較運算子用來比較數字,但有時也會比較物件或是字串是否相同,例如:

a="hello"
print(a ? "hello") # ?應該是什麼呢?

在python可以使用 is 或 is not 來進行比較。

邏輯運算子

有時候在條件上會使用到,例如:一種紅色「而且」吃起來甜的水過。「而且」就是一種邏輯運算的關鍵字,邏輯運算子的結果為 False / True 。
通常有三種:and or not

邏輯運算子範例結果
andTrue and TrueTrue
False and TrueFalse
False and FalseFalse
orTrue or TrueTrue
False or TrueTrue
False or FalseFalse
notnot TrueFalse
not FalseTrue 

一些提醒

運算子之間存在優先權,以下我們排定順序:

  1. ()最優先
  2. 邏輯運算子 not 以及 + –
  3. 算術運算子 * / % + –
  4. 比較運算子 大小先於等於
  5. 邏輯運算子 and or
  6. 指派運算子

在python裡面,True / False 也對應了數字的 1/0,因此會得到 print(1-(not False)) 結果為 0,這樣的特殊運算。

來看看為什麼吧?按照順序 ()有最大優先,因此

  1. 先處理not False 為 True
  2. True 相當於 數字 1
  3. 最後獲得 print(1-1)

小練習

最後來做個小練習:

  1. 試著用python來表示,1+1與2-1的結果是否相同,你應該會在畫面上看到 True 的結果。
  2. 試著用python來表示,2-1 與 not False 的結果是否相同,你應該會在畫面上看到 True 的結果。(記得注意順序)

結語

我們已經知道了其中五個要素中的四項,接著來看最後一項控制,python的控制單元有if 以及 for、while,if 用來判斷條件使否成立,來決定是否執行內容,for以及while判斷條件是否成立,成立的話會不斷循環內容(迴圈)。

所以之後控制單元會拆成兩章,分別是 if (條件)以及 for and while(迴圈)。

This article was written by 好想射射>///<. Any similarities to other works are purely coincidental.

我們是 Be Good Tool
團隊由幾位工程師、設計師與PM組成
專注開發各種免費網站工具和推廣優質的APP
歡迎到我們的線上工具列表看看喔!