Python3基本運算子


運算子是處理的運算元的值的結構。
考慮表示式4 + 5= 9,在這裡4和5被稱為運算元,而 + 被稱為操作符。

運算子的型別

Python語言支援以下型別的運算子。
  • 算術運算子
  • 比較(關係)運算子
  • 賦值運算子
  • 邏輯運算子
  • 位運算子
  • 運算子成員
  • 標識運算子
讓我們一個一個地來看所有運算子。

Python算術運算子

假設變數包含a=10以及變數b=21,那麼

顯示範例 ]

操作符 描述 範例
+ 加法 相加運算兩側的值 a + b = 31
- 減法
操作符右側數減去左側運算元
a – b = -11
* 乘法
操作符兩側的值相乘
a * b = 210
/ 除法
用運算子右側的運算元除以左側運算元
b / a = 2.1
% 模
用右手運算元除以左手運算元並返回餘數
b % a = 1
** 指數
執行運算子指數(冪)計算
a**b 就是10 的20 次冪
// 地板除 - 除法不管運算元為何種數值型別,總是會捨去小數部分,返回數位序列中比真正的商小的最接近的數位 9//2 = 4 和 9.0//2.0 = 4.0

Python比較運算子

這些運算子對它們的兩側的值進行比較,並決定它們之間的關係。它們也被稱為關係運算子。

假設變數a=10和變數b=20,那麼-

顯示範例 ]

操作符 描述 範例
==
如果兩個運算元的值相等,則條件計算結果為 true
(a == b) 其值不為 true.
!=
如果兩個運算元的值不相等,則條件變為 false
(a!= b) 其值為 true.
>
如果左運算元的值大於右運算元的值,則條件為 true
(a > b) 其值不為true.
<
如果左運算元的值小於右運算元的值,則條件為 true
(a < b) 其值為true.
>=
如果左運算元的值大於或等於右運算元的值,則條件為 true
(a >= b) 其值不為 true.
<=
如果左運算元的值小於或等於右運算元的值,則條件為 true
(a <= b) 其值為 true.

Python賦值運算子

假設變數a=10和變數b=20,那麼-

顯示範例 ]

運算子 描述 範例
=
將右側的運算元賦值給左側的運算元
c = a + b 是將 a + b 的值分配到 c
+= 
相加右運算元和左運算元,並分配結果到左運算元
c += a 相當於 c = c + a
-= 
左運算元減去右運算元,並分配結果到左運算元
c -= a 相當於 c = c - a
*=  右運算元和左運算元相乘,並分配結果到左運算元 c *= a 相當於 c = c * a
/=  左運算元除以右運算元,並分配結果到左運算元 c /= a 相當於 c = c / a;c /= a相當於 c = c / a
%=  左運算元模除以右運算元,並分配結果到左運算元 c %= a 相當於 c = c % a
**= 
執行運算子指數(冪)計算並將結果分配值給左運算元
c **= a 相當於c = c ** a
//= 地板除
對運算元進行地板除,並賦值給左運算元
c //= a 相當於 c = c // a

Python位運算子

位運算子適用於位和位運算子執行位上的運算。 假設如果 a = 60; 且b =13; 現在它們的二進位制格式如下 -

a = 0011 1100

b = 0000 1101

-----------------

a&b = 0000 1100

a|b = 0011 1101

a^b = 0011 0001

~a  = 1100 0011

Python的內建函式 bin() 可以被用來獲取整數的二進位制表示。
Python語言支援以下位運算子。

顯示範例 ]

運算子 描述 範例
操作符複製一個位到結果如果都存在於兩個運算元
(a & b) (二進位制為 0000 1100)
它複製一個位,如果存在於其中一個運算元
(a | b) = 61 (二進位制為 0011 1101)
互斥或運算
(a ^ b) = 49 (二進位制為 0011 0001)
它是一元,並具有「翻轉」位的作用
(~a ) = -61 (二進位制為 1100 00112 以二補數形式,由於一個帶符號二進位制數)
<<
二進位制左移
a << = 240 (二進位制為 1111 0000)
>>
二進位制右移
a >> = 15 (二進位制為 0000 1111)

Python邏輯運算子

Python語言支援以下邏輯運算子。假設變數 a = true ,變數 b = false,那麼

顯示範例 ]

Python操作符成員

在一個序列Python的成員操作符來測試成員,如字串,列表或元組。 有兩個成員操作符如下面所解釋:

操作符成員範例 ]

運算子 描述 範例
in
如果在指定的順序中找到變數,計算結果為true,否則為 false
x in y,  如果x是序列y的成員,則返回true
not in
如果在指定的順序中不能找到變數,計算結果為true,否則為 false
x not in y, 如果x不是序列y的成員,則返回true

Python標識操作符

標識運算子比較兩個物件的儲存單元。 兩種標識操作符解釋如下:

顯示應用範例 ]

運算子 描述 範例
is
如果操作符兩側是相同的物件,計算結果為true,否則結果為 false
x is y,如果ID(x)等於ID(y)返回 1
is not
如果操作符兩側的變數是相同的物件,計算結果為false,否則 true
x is not y, 如果ID(x)不等於ID(y)返回 1

Python運算優先順序

下表列出了所有從最高優先順序到最低的運算子。

運算子優先順序 ]

運算子 描述
**
冪(指數)
~ + -
補,一元加號和減號(方法名的最後兩個+@和 -@)
* / % //
乘,除,取模和地板除
+ -
加法和減法
>> <<
左,右轉向按位元
&
位元「與」

^ |
按位元互斥或`'和常規`或'
<= < > >=
比較運算子
<> == !=
操作符比較
= %= /= //= -= += *= **=
賦值運算子
is is not
操作符標識
in not in
操作符成員
not or and
邏輯運算子