Python語言支持以下類型的運(yùn)算符:
- 算術(shù)運(yùn)算符
- 比較運(yùn)算符
- 賦值運(yùn)算符
- 邏輯運(yùn)算符
- 位運(yùn)算符
- 成員運(yùn)算符
- 身份運(yùn)算符
- 運(yùn)算符優(yōu)先級(jí)
接下來帶著大家一起學(xué)習(xí)下這些
一、算術(shù)運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| + | 兩個(gè)對(duì)象相加 |
| - | 表示負(fù)數(shù)或者兩個(gè)數(shù)相減 |
| * | 兩個(gè)數(shù)相乘或者返回一個(gè)重復(fù)若干次的字符串 |
| / | 兩個(gè)數(shù)相除 |
| % | 取模,返回除法的余數(shù) |
| ** | 冪,返回一個(gè)數(shù)的幾次冪,比如10**2表示10的2次方 |
| // | 取整數(shù),兩個(gè)數(shù)相除,向下取整數(shù),比如9//2結(jié)果為4 |
案例:
a = 2
b = 1
c = 3
# 加法 結(jié)果為:3
print(a + b)
# 減法 結(jié)果為:1
print(a - b)
# 乘法 結(jié)果為:2
print(a * b)
# 除法 結(jié)果為:2.0
print(a / b)
# 取模 結(jié)果為:0
print(a % b)
# 冪 結(jié)果為:2
print(a ** b)
# 除法取整 結(jié)果為:1
print(c // a)
二、比較運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| == | 比較兩個(gè)對(duì)象是否相等 |
| != | 比較兩個(gè)對(duì)象是否不相等 |
| > | 比較一個(gè)數(shù)字是否大于另一個(gè)數(shù)字 |
| < | 比較一個(gè)數(shù)字是否小于一個(gè)數(shù)字 |
| >= | 一個(gè)數(shù)字是否大于等于另一個(gè)數(shù)字 |
| <= | 一個(gè)數(shù)字是否小于等于一個(gè)數(shù)字 |
案例
aa = 2
bb = 4
cc = 1
# 輸出結(jié)果:aa不等于bb
if aa == bb:
print('aa等于bb')
else:
print('aa不等于bb')
# 輸出結(jié)果:aa不等于bb
if aa != bb:
print('aa不等于bb')
else:
print('aa等于bb')
# 輸出結(jié)果:aa小于bb
if aa < bb:
print('aa小于bb')
else:
print('aa大于bb')
# 輸出結(jié)果:aa小于bb
if aa > bb:
print('aa大于bb')
else:
print('aa小于bb')
# 輸出結(jié)果:aa小于等于bb
if aa >= bb:
print('aa大于等于bb')
else:
print('aa小于等于bb')
# 輸出結(jié)果:aa小于等于bb
if aa <= bb:
print('aa小于等于bb')
else:
print('aa大于等于bb')
三、賦值運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| = | 簡(jiǎn)單的賦值運(yùn)算符,比如a = 2 |
| += | 加法賦值運(yùn)算符,a += b等價(jià)于a = a + b |
| -= | 減法賦值運(yùn)算符,a -= b等價(jià)于a = a - b |
| *= | 乘法賦值運(yùn)算符,a *= b 等價(jià)于a = a * b |
| /= | 除法賦值運(yùn)算符 a /= b 等價(jià)于 a = a / b |
| %= | 取模賦值運(yùn)算符, a %= b 等價(jià)于 a = a % b |
| **= | 冪賦值運(yùn)算符,a **= b 等價(jià)于 a = a**b |
| //= | 整除賦值運(yùn)算符,a //= b等價(jià)于 a = a //b |
案例:
aaa = 2
bbb = 3
# 輸出結(jié)果:5
aaa += bbb
print(aaa)
# 輸出結(jié)果:15
aaa *= bbb
print(aaa)
# 輸出結(jié)果:5.0
aaa /= bbb
print(aaa)
# 輸出結(jié)果:2.0
aaa %= bbb
print(aaa)
# 輸出結(jié)果:8.0
aaa **= bbb
print(aaa)
# 輸出結(jié)果:2.0
aaa //= bbb
print(aaa)
四、位運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| & | 按位與運(yùn)算符,參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為1,則該位得結(jié)果為1,否則為0 |
| | | 按位或運(yùn)算符,只要對(duì)應(yīng)的兩個(gè)二進(jìn)位有一個(gè)為1,結(jié)果位就為1 |
| ^ | 按位異或運(yùn)算符,當(dāng)兩對(duì)應(yīng)的二進(jìn)位相異時(shí),結(jié)果為1 |
| ~ | 按位取反運(yùn)算符,對(duì)數(shù)據(jù)的每個(gè)二進(jìn)制位取反,即把1變?yōu)?,0變成1,~x類似于-x-1 |
| << | 左移動(dòng)運(yùn)算符,運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由<<右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0 |
| >> | 右移動(dòng)運(yùn)算符,把>>左邊的運(yùn)算數(shù)的各二進(jìn)制位全部右移若干位,>>右邊的數(shù)指定移動(dòng)的位數(shù) |
案例:
e = 20
f = 10
# 輸出結(jié)果:0
g = e & f
print(g)
# 輸出結(jié)果:30
g = e | f
print(g)
# 輸出結(jié)果:30
g = e ^ f
print(g)
# 輸出結(jié)果:-21
g = ~e
print(g)
# 輸出結(jié)果:80
g = e << 2
print(g)
# 輸出結(jié)果:5
g = e >> 2
print(g)
五、邏輯運(yùn)算符
| 運(yùn)算符 | 邏輯表達(dá)式 | 描述 |
|---|---|---|
| and | x and y | 如果x為False,x and y返回False,否則返回y的值 |
| or | x or y | 如果x為True,返回x的值,否則返回y |
| not | not x | 如果x為True,返回False,如果為False,返回True |
案例:
h = 10
i = 20
# 輸出結(jié)果:都為true
if h and i:
print("都為true")
else:
print("有不是true的")
# 輸出結(jié)果:都為true,或者一個(gè)為true
if h or i:
print("都為true,或者一個(gè)為true")
else:
print("都不是true")
# 輸出結(jié)果:都是true的
if not(h and i):
print("都為false,或其中一個(gè)為false")
else:
print("都是true的")
六、成員運(yùn)算符
除了以上的一些運(yùn)算符之外,Python還支持成員運(yùn)算符,測(cè)試實(shí)例中包含了一系列的成員,包括字符串,列表或元組
| 運(yùn)算符 | 描述 |
|---|---|
| in | 如果在指定的序列中找到值就返回True,否則返回False |
| not in | 如果沒有找到,返回True,否則返回False |
案例:
a = 10
b = 20
myList = [1, 2, 3, 4, 20]
# 輸出結(jié)果:a不在列表里
if a in myList:
print("a在列表里")
else:
print("a不在列表里")
# 輸出結(jié)果:a不在列表里
if a not in myList:
print("a不在列表里")
else:
print("a在列表里")
# 輸出結(jié)果:b在列表里
if b in myList:
print('b在列表里')
else:
print('b不在列表里')
七、身份運(yùn)算符
身份運(yùn)算符用于比較兩個(gè)對(duì)象的存儲(chǔ)單元
| 運(yùn)算符 | 描述 |
|---|---|
| is | is是判斷兩個(gè)標(biāo)識(shí)符是不是引用自一個(gè)對(duì)象 |
| is not | is not是判斷兩個(gè)標(biāo)識(shí)符是不是引用不同對(duì)象 |
案例:
a = 20
b = 10
c = 20
# 輸出結(jié)果:不是同一個(gè)對(duì)象
if a is b:
print("a和b是同一個(gè)對(duì)象")
else:
print('不是同一個(gè)對(duì)象')
# 輸出結(jié)果:a和c是同一個(gè)對(duì)象
if a is c:
print("a和c是同一個(gè)對(duì)象")
else:
print("a和c不是同一個(gè)對(duì)象")
# 輸出結(jié)果:a和b不是同一個(gè)對(duì)象
if a is not b:
print("a和b不是同一個(gè)對(duì)象")
else:
print("a和b是同一個(gè)對(duì)象")
is是判斷兩個(gè)變量引用對(duì)象是否為同一個(gè),==是判斷引用變量的值是否相等
八、運(yùn)算符優(yōu)先級(jí)
| 運(yùn)算符 | 描述 |
|---|---|
| ** | 指數(shù),優(yōu)先級(jí)最高
|
| ~、+、- | 按位反轉(zhuǎn)、加@、減@ |
| *、/、%、// | 乘、除、取模、取整除 |
| +、- | 減法、加法 |
| >>、<< | 右移、左移 |
| & | 位'AND' |
| ^、| | 位運(yùn)算符 |
| <=、<、>、>= | 比較運(yùn)算符 |
| ==、!= | 等于運(yùn)算符 |
| =、%=、/=、//=、-=、*=、**= | 賦值運(yùn)算符 |
| is、is not | 身份運(yùn)算符 |
| in、not in | 成員運(yùn)算符 |
| and、or、not | 邏輯運(yùn)算符 |
本文到此結(jié)束啦,如有誤歡迎各位指正,也歡迎大家持續(xù)關(guān)注哦!!!!