--- tags: python, 程式設計 --- # 運算子 根據[Python](https://hackmd.io/@defu/python)所提到的,Python屬於程式語言,而不論任何程式語言均具備有運算子的功能,以python為例,功能大致上可區分為以下幾種 1. 算術運算子 2. 位移運算子 3. 位元運算子 4. 關係運算子 5. 指派運算子 6. 分隔符號 ## 算術運算子 顧名思義,就是用來計算用的在,**算術運算子(arithmetic operator)**需要兩個**運算元(Operand)**,才有辦法構成**運算式(expression)**。 | 運算子 | 功能 | 範例 | 優先順序 | |---|---|---|---| |`**`|指數|`a**b`|1| |`*`|乘|`a*b`|2| |`/`|除|`a/b`|2| |`//`|求商數|`a//b`|2| |`%`|求餘數|`a%b`|2| |`+`|加|`a+b`|3| |`-`|減|`a-b`|3| 其中,括號`()`內的運算優先級別最高。 ## 位移運算子 |運算子|功能|範例|結果| |---|---|---|---| |`<<`|向右位移|`a = 1`做`a<<3`|`0b1`→`0b100` = 8| |`>>`|向左位移|`a = 8`做`a>>3`|`0b100`→`0b1` = 1| 將變數變為二進制之後往往左或往右進行位移,並且最後在換回十進位。 ## 位元運算子 運算元可以為布林值 |運算子|功能|範例| |---|---|---| |`&`|且(AND)|`a & b`| |`|`|或(OR)|`a | b`| |`^`|互斥或(XOR)|`a^b`| |`~`|反(NOT)|`~a`| ## 關係運算子 |運算子|功能|範例| |---|---|---| |`<`|小於|`a < b`| |`>`|大於|`a > b`| |`<=`|小於等於|`a <= b`| |`>=`|大於等於|`a >= b`| |`==`|等於| `a == b`| |`!=`|不等於|`a != b`| 輸出結果均為布林值。 ## 指派運算子 |運算子|功能|範例| |---|---|---| |`=`|賦值|`a = b`| |`+=`|相加後指派|`a += b`| |`-=`|相減後指派|`a -= b`| |`*=`|相乘後指派|`a *= b`| |`**=`|取指數後指派| `a **= b`| |`/=`|相除後指派|`a /= b`| |`//=`|相除取整數後指派|`a //= b`| |`%=`|相除後取餘數後指派|`a %= b`| |`&=`|位元且後指派|`a &= b`| |`|=`|位元或後指派|`a |= b`| |`^=`|位元互斥或後指派|`a ^= b`| |`<<=`|向左位移後指派|`a <<= b`| |`>>=`|向右位移後指派|`a >>= b`| ## 分隔符號 |符號|功能|說明| |---|---|---| |`()`|括號|最優先計算, 函數的參數列| |`[]`|中括號|序列型態的索引符號, 定義串列(list)| |`{}`|大括號|定義字典檔(dictionary)使用| |`,`|逗號|分隔運算式使用| |`.`|點|存取物件的方法(method)或是屬性(attribute)。[參見](https://hackmd.io/@defu/python_class) |`:`|冒號|陳述式的分隔符號。[if](https://hackmd.io/@defu/python_if) [for](https://hackmd.io/@defu/python_for) [while](https://hackmd.io/@defu/python_while) [def](https://hackmd.io/@defu/python_def) [try](https://hackmd.io/@defu/python_try)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up