一、算術運算符
| 運算符 |
|---|
| + |
| - |
| * |
| / |
| % |
| **(冪)求次方 |
| //(取整除,向下取整)如:9//2 =4 |
二、比較運算符
| 運算符 |
|---|
| == |
| != |
| <>(不等於,類似!=) |
| < |
| > |
| >= |
| <= |
#舉例說明:
x = 10
y = 20
print(x > y) # False
print(x < y) # True
print(x >= y) # False
print(x <= y) # True
print(x == y) # False
print(x != y) # True
三、賦值運算符
| 運算符 |
|---|
| = |
| += |
| -= |
| *= |
| /= |
| %= |
| **= |
| //= |
x = 10 # (一元賦值運算符)
y = 20
# x = x+y # x += y
x += y # (二元賦值運算符)
x += 10
print(x)
x -= y
print(x)
x *= y
print(x)
x /= y
print(x)
x **= y # x = x**y
print(x)
y //= x # x = x//y
print(y)
x %= y # x = x%y
print(x)
四、邏輯運算符
主要用於邏輯判斷,bool,循環等,返回True或False(二元運算符)
| 運算符 |
|---|
| and |
| or |
| not |
and(和),兩個條件都為真就為真,否則都為False.
print(1>1 and 2>3) # False
print(10>1 and False) # False
or(或),只要有一個為真就為真,否則都為False
age = 18
inp_age= input('age:')
print(age==inp_age or True) # True
print(True or False) # True
print(False or False) # False
not(不是)
print(not True) # False
print(not False) # True
五、身份運算符
身份運算符用於比較兩個元素對象的存儲單位,通過比較兩者id返回布爾值
注意;值相同的id不一定相同,id相同的值一定相同
| 運算符 | 描述 | 實例 |
|---|---|---|
| is | is是判斷倆個標識符是不是引用自一個對象,類似== | x is y(返回bool值) |
| is not | is not是判斷倆個標識符是不是引用自不同的對象,類似!= | x is not y(返回bool值) |
x=1000
y=1000
print(id(x))
print(id(y))
print(x is y) # False
print(x is not y) # True
print(not x is y) #False
六、位運算符
按位置運算符把數字看作二進制來進行計算的,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
| 運算符 | 描述 | 實例 |
|---|---|---|
| & | 按位與運算符:參與運算的倆個值,如果倆個相應的位都為1,則該位的結果為1,否則為0. | (a&b)輸出結果為12,二進制的解釋為:0000 1100| |
| | | 按位或運算符:只要對應的二進位有一個為1時,結果位就為1. | (a|b)輸出結果61,二進制解釋:0011 1101 |
| ^ | 按位異或運算符:當倆對應的二進位相異時,結果為1 | (a^b)輸出的結果為49,二進制的解釋為:0011 0001 |
| ~ | 按位取反運算符:對數據的每一個二進制位取反,即把0變成1,把1變成0。~x類似於-x-1. | (~a)輸出的結果位-61,二進制解釋:1100 0011,在一個有符號二進制的補碼形式。 |
| << | 左移動運算符:運算符的各二進制位全部左移若干位,由<<右邊的數字指定了移動的位數,高位丟棄,低位補0. |
a<<2,輸出結果為240,二進制解釋為:1111 0000 |
| >> | 右移動運算符:把>>左邊的運算數的各二進位全部右移若干位,>>右邊的數字指定了移動的位數。 |
a>>2輸出結果為15,二進制的解釋為:0000 1111 |
七、成員運算符
除了以上的一些運算符之外,python還支持成員運算符,測試實例中包含了一系列的成員,包括字符串,列表或者元組。
| 運算符 | 描述 | 實例 |
|---|---|---|
| in | 如果在指定的序列中找到值飯后True,否則返回False。 | x 在y 的序列中,x in y 返回True |
| not in | 如果在指定的序列中沒有找到值,返回True,否則返回False | x 不在y的序列中,x not iny 返回True |
八、python運算符的優先級
| 運算符 | 描述 |
|---|---|
| ** | 指數(最高優先級) |
| ~ +- | 按位翻轉,一元加號和減號(最后倆個的方法命名為+@和-@) |
| */%// | 乘,除,取模(求余),取整除 |
| +- | 加減法 |
| >> << | 右移,左移運算符 |
| & | 位’AND‘ |
| ^| | 位運算符 |
| <=,<,>,>= | 比較運算符 |
| <>,==,!= | 等於運算符 |
| =,%=,/=,//=,**=,*=,+=,-= | 等於運算符 |
| is,is not | 身份運算符 |
| in,not in | 成員運算符 |
| not ,and,or | 邏輯運算符 |
