運算子 (operator) 是計算用的符號或關鍵字 (keyword) ,運算子與運算元 (operand) 構成運算式 (expression) ,運算式為程式 (program) 中最基本的陳述 (statement) 。
關鍵字中當作運算子使用的有以下這些,各有不同的用途,之後的部分會逐一詳細介紹
關鍵字 | 用途 |
---|---|
and | 邏輯「且」運算 |
or | 邏輯「或」運算 |
not | 邏輯「非」運算 |
del | 刪除識別字 |
is | 判斷物件是否相等 |
in | 判斷是否存在 |
not in | 判斷是否不存在 |
lambda | 無名函數 |
yield | 產生數值 |
鍵盤符號當作運算子使用的有以下這些,同樣各有不同的用途,之後的部分一樣會逐一詳細介紹
分類 | 符號 |
---|---|
算術運算子 | + - * ** / // % |
位元運算子 | << >> & | ^ ~ |
比較運算子 | < > <= >= == != |
指派運算子 | = += -= *= /= //= %= |
位元指派運算子 | &= |= ^= >>= <<= **= |
除了運算子之外,有些符號僅作分隔用,例如函數 (function) 識別字 (identifier) 後頭緊接的小括弧,或是串列 (list) 用的中括弧等等
名稱 | 符號 |
---|---|
小括弧 | ( ) |
中括弧 | [ ] |
大括弧 | { } |
其他 | , : . ; @ -> |
還有四個符號具有特殊意義,例如字串 (string) 用的單引號或雙引號,註解 (comment) 用的井字號,跳脫字元 (escape sequence) 用的反斜線
名稱 | 符號 |
---|---|
單引號 | ' |
雙引號 | " |
井字號 | # |
反斜線 | \ |
另外有三個符號在 Python 中沒有使用,如果這些符號出現在註解或字串之外的地方,會直接導致錯誤
名稱 | 符號 |
---|---|
金錢符號 | $ |
問號 | ? |
重音符號 | ` |
依運算子的種類區分,有算術運算子、位元運算子、比較運算子、指派運算子、邏輯運算子、刪除物件、判斷物件是否相同、判斷物件是否存在、無名函數、產生器等,之後的部分就會以種類來介紹各種運算子的用法。
了解計算的優先次序是學會使用運算子重要的基礎,什麼是計算的優先次序呢?簡單講,就像先乘除後加減的規則一樣,具有高優先次序的運算子或關鍵字會先被直譯器執行。
這邊整理出計算優先次序列表, lambda 運算最高, if-else 陳述次之,再來是邏輯運算及比較運算等等
順序 | 符號 |
---|---|
1 | lambda |
2 | if–else |
3 | or |
4 | and |
5 | not x |
6 | in, not in, is… |
7 | | |
8 | ^ |
9 | & |
10 | <<, >> |
11 | +, - |
12 | *, @, /, //, % |
13 | +x, -x, ~x |
14 | ** |
單元三會繼續介紹以下各個主題
- 3.1 算術運算
- 3.2 位元運算
- 3.3 比較運算
- 3.4 指派運算
- 3.5 邏輯運算
- 3.6 del 運算
- 3.7 is 運算
- 3.8 in 運算
- 3.9 lambda 運算
- 3.10 yield 運算
- 3.11 串列的綜合運算
相關教學影片
- Python 的運算子與特殊符號 ⇨ YouTube 頁面連結
- 第三堂課導覽 ⇨ YouTube 頁面連結
- Python 的運算子與運算式 ⇨ YouTube 頁面連結
- 第三堂課舉一反三 ⇨ YouTube 頁面連結