算術運算符
比較(關係)運算符
賦值運算符
邏輯運算符
位運算符
成員運算符
身份運算符
運算符優先級
+ 加 兩個對象相加 a + b 輸出結果 31 - 減 獲得負數或是一個數減去另外一個數 a - b 輸出結果 -11 * 乘 兩個數相乘或是返回一個被重複若干次的字符串 a * b 輸出結果 210 / 除 x 除以 y b / a 輸出結果 2.1 % 取模 返回除法的餘數 b % a 輸出結果 1 ** 冪 返回x的y次冪 a**b 爲10的21次方 // 取整除 向下取接近除數的整數 >>> 9//2 >4
全部比較運算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價。注意,這些變量名的大寫。
== 等於 比較對象是否相等 (a == b) 返回 False。 != 不等於 比較兩個對象是否不相等 (a != b) 返回 True。 > 大於 返回x是否大於y (a > b) 返回 False。 < 小於 返回x是否小於y。 (a < b) 返回 True。 >= 大於等於 返回x是否大於等於y。 (a >= b) 返回 False。 <= 小於等於 返回x是否小於等於y。 (a <= b) 返回 True。
= 賦值運算符 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
a = 0011 1100 b = 0000 1101 ----------------- a&b = 0000 1100 a|b = 0011 1101 a^b = 0011 0001 ~a = 1100 0011
& 按位與運算符:參與運算的兩個值,若是兩個相應位都爲1,則該位的結果爲1,不然爲0 (a & b) 輸出結果 12 ,二進制解釋: 0000 1100 | 按位或運算符:只要對應的二個二進位有一個爲1時,結果位就爲1。 (a | b) 輸出結果 61 ,二進制解釋: 0011 1101 ^ 按位異或運算符:當兩對應的二進位相異時,結果爲1 (a ^ b) 輸出結果 49 ,二進制解釋: 0011 0001 ~ 按位取反運算符:對數據的每一個二進制位取反,即把1變爲0,把0變爲1。~x 相似於 -x-1 (~a )輸出結果 -61 二進制解釋:1100 0011在一個有符號二進制數的補碼形式。
<< 左移動運算符:運算數的各二進位所有左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。 a << 2 輸出結果 240 ,二進制解釋: 1111 0000 >> 右移動運算符:把">>"左邊的運算數的各二進位所有右移若干位,">>"右邊的數指定移動的位數 a >> 2 輸出結果 15 ,二進制解釋: 0000 1111
and x and y 布爾"與" - 若是 x 爲 False,x and y 返回 False,不然它返回 y 的計算值。 (a and b) 返回 20。 or x or y 布爾"或" - 若是 x 是 True,它返回 x 的值,不然它返回 y 的計算值。 (a or b) 返回 10。 not not x 布爾"非" - 若是 x 爲 True,返回 False 。若是 x 爲 False,它返回 True。 not(a and b) 返回 False
in 若是在指定的序列中找到值返回 True,不然返回 False。 x 在 y 序列中 , 若是 x 在 y 序列中返回 True。 not in 若是在指定的序列中沒有找到值返回 True,不然返回 False。 x 不在 y 序列中 , 若是 x 不在 y 序列中返回 True。
is is 是判斷兩個標識符是否是引用自一個對象 x is y, 相似 id(x) == id(y) , 若是引用的是同一個對象則返回 True,不然返回 False is not is not 是判斷兩個標識符是否是引用自不一樣對象 x is not y , 相似 id(a) != id(b)。若是引用的不是同一個對象則返回結果 True,不然返回 False。
is 與 == 區別:spa
is 用於判斷兩個變量引用對象是否爲同一個, == 用於判斷引用變量的值是否相等。code
** 指數 (最高優先級) ~ + - 按位翻轉, 一元加號和減號 (最後兩個的方法名爲 +@ 和 -@) * / % // 乘,除,取模和取整除 + - 加法減法 >> << 右移,左移運算符 & 位 'AND' ^ | 位運算符 <= < > >= 比較運算符 <> == != 等於運算符 = %= /= //= -= += *= **= 賦值運算符 is is not 身份運算符 in not in 成員運算符 and or not 邏輯運算符