日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

一起來(lái)了解python的運(yùn)算符_python

作者:童話的python之旅 ? 更新時(shí)間: 2022-04-09 編程語(yǔ)言

1、算數(shù)運(yùn)算符

小例中:
?? ??? ?a = 5
?? ??? ?b = 3

算數(shù)運(yùn)算符 描述 小例
+ a + b = 8
- a - b = 2
* a * b = 15
/ a / b = 1.6666666666666667
// 整除 a // b = 1
% 取余 a % b = 2
** a ** b = 125

注:

	(1)、整數(shù)經(jīng)過(guò)除法運(yùn)算后變成浮點(diǎn)數(shù)(小數(shù));
	(2)、整除結(jié)果只取整數(shù)部分,小數(shù)點(diǎn)以及后面的數(shù)字刪除;

取余的四種情況:

1、正常情況
	5 % 3 = 2
2、被除數(shù)為負(fù)數(shù)
	-5 % 3 = 1
	計(jì)算過(guò)程:
		(-2) + 3 = 1
		在正常情況下的余數(shù)前減負(fù)號(hào),然后與除數(shù)相加得最終結(jié)果
3、除數(shù)為負(fù)數(shù)
	5 % -3 = -1
	計(jì)算過(guò)程:
		2 + (-3)= -1
		在正常情況下的余數(shù),然后與除數(shù)相加得最終結(jié)果
4、被除數(shù)和除數(shù)都為負(fù)數(shù)
		-5 % -3 = -2
		計(jì)算過(guò)程:
			在正常情況的余數(shù)前面加負(fù)號(hào),也就是正常情況的余數(shù)的相反數(shù)

2、比較運(yùn)算符

比較運(yùn)算符運(yùn)算的結(jié)果為布爾值,當(dāng)結(jié)果正確時(shí)為True(真),當(dāng)結(jié)果錯(cuò)誤時(shí)為False(假)。

小例中:
a = 1
b = 2

比較運(yùn)算符 描述 小例
> 大于 a > b -->False
< 小于 a < b -->True
>= 大于等于 a >= b -->False
<= 小于等于 a <= b --> True
== 等于 a == b --> False
!= 不等于 a != b --> True

注:

>=、<= 只要滿足一個(gè)條件結(jié)果就為真

3、賦值運(yùn)算符

小例中:
?? ?a = 2
?? ?b = 3

賦值運(yùn)算符 描述 小例
= 簡(jiǎn)單的賦值運(yùn)算符 a = b,將b的值賦值給a, 結(jié)果a=3
+= 加法賦值運(yùn)算符 a += b,等于a = a + b, 結(jié)果a=5
-= 減法賦值運(yùn)算符 a -= b,等于a = a - b, 結(jié)果a=-1
*= 乘法賦值運(yùn)算符 a *= b,等于a = a * b, 結(jié)果a=6
/= 除法賦值運(yùn)算符 a /= b,等于a = a / b, 結(jié)果a=0.6666666666666666
//= 整除賦值運(yùn)算符 a //= b,等于a = a // b, 結(jié)果a=0
**= 冪賦值運(yùn)算符 a **= b,等于a = a ** b, 結(jié)果a=6

4、成員運(yùn)算符

成員運(yùn)算符 描述
in x in y,判斷x是不是在y中,如果在則返回True,否則返回False
not in x not in y,判斷x是不是在y中,如果不在則返回True,否則返回False

使用場(chǎng)景

1、字符串
2、列表
3、元組
4、集合
5、字典
6、---

實(shí)例

# 字符串
s = '這里是字符串的成員運(yùn)算符的實(shí)例'
res1 = '字符串' in s
print(res1)		# True
res2 = '字符串' not in s
print(res2)		# False

# 列表
ls = [1 ,2,3]
ls1 = 1 in ls
print(ls1)		# True
ls2 = 1 not in ls
print(ls2)		# False

# 元組
tp = ('1','2','3')
tp1 = '1' in tp
print(tp1)		# True
tp2 = '1' not in tp
print(tp2)		# False

# 集合
st = {1,2,3}
st1 = 1 in st
print(st1)		# True
st2 = 1 not in st
print(st2)		# False

# 字典
dic = {'k1':'v1','k2':'v2','k3':'v3'}
dic1 =  'k1' in dic
print(dic1)		# True
dic2 = 'k1' not in dic
print(dic2)		# False
# 成員運(yùn)算符 判斷字典時(shí) 判斷的是鍵 不是那個(gè)所對(duì)應(yīng)的值
dic3 = 'v1' in dic
print(dic3)		# False

5、身份運(yùn)算符

身份運(yùn)算符 描述
is x is y,檢測(cè)x和y在內(nèi)存中是不是同一個(gè)地址,如果是則返回Ture,否則返回False
not is x not is y,檢測(cè)x和y在內(nèi)存中是不是同一個(gè)地址,如果不是則返回Ture,否則返回False

實(shí)例

# 這些實(shí)例都已pycharm運(yùn)行,python自帶解釋器有所區(qū)別

# 整數(shù)、浮點(diǎn)數(shù)、布爾值相同地址相等
int1 = 5
int2 = 5
print(int1 is int2)		# True
float1 = 1.0
float2 = 1.0
print(float1 is float2)		# True
bool1 = True
bool2 = True
print(bool1 is bool2)		# True

# 字符串相同地址相等
s1 = '123'
s2 = '123'
print(s1 is s2)		# True

# 元組相同地址相等
tp1 = ()
tp2 = ()
print(tp1 is tp2)		# True

# 列表、集合、字典,無(wú)論什么情況地址都不相同
ls1 = []
ls2 = []
print(ls1 is ls2)		# False

6、邏輯運(yùn)算符

邏輯運(yùn)算符 描述 小例
and 邏輯與 :全真為真,一假為假 2>3 and 3<2 ---->True
or 邏輯或:全假為假,一真為真 1>2 or 2<1 ---->False
not 邏輯非:與原值相反 not 2>1 ---->False

實(shí)例

a = 1
b = 2
c = False
ser1 = a<b and b>a
print(ser1)		# True
ser2 = a>b or b<a
print(ser2)		# False
ser3 = not c
print(ser3)		# True

邏輯短路

適用一個(gè)and或者一個(gè)or:
	1、一個(gè)and時(shí):x and y,如果x為假,則and后面的y不進(jìn)行運(yùn)算,結(jié)果直接為False。
	2、一個(gè)or時(shí):x or y,如果x為真,則or后面的y不進(jìn)行運(yùn)算,結(jié)果直接為True。

邏輯優(yōu)先級(jí)

邏輯優(yōu)先級(jí):() > not > and > or 
res1 = True and (False or True)  # --> True and True
print(res1)		# True

res2 = False or not True  # -->False or False 
print(res2)		# False

res3 = False and True or False and True or False # -->False or False or False
print(res3)		# False

7、位運(yùn)算符

位運(yùn)算是先將數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制值數(shù)據(jù),然后再進(jìn)行一系列的運(yùn)算。
位運(yùn)算符 描述
& 按位與
| 按位或
~ 按位非
^ 按位異或
>> 右移
<< 左移

按位與

進(jìn)行按位與運(yùn)算的兩個(gè)值,相同位置的二進(jìn)制位值都為1,則結(jié)果為1,否則為0。
8 =   1000
9 =   1001
8&9 = 1000 	--->8

按位或

進(jìn)行按位或運(yùn)算的兩個(gè)值,相同位置的二進(jìn)制位值只要有一個(gè)為1,則結(jié)果為1。
9 =   1001
10 =  1010
8|9=  1011 	-->11

按位非

進(jìn)行按位非運(yùn)算,結(jié)果為:原值加一的絕對(duì)值即| n+1|
a = 6
b = -6
~a = |6+1| = 7
~b = |-6+1| = 5

按位異或

進(jìn)行按位異或運(yùn)算的兩個(gè)值,相同位置的二進(jìn)制位值相同,則結(jié)果為0,否則為1。
9 =    1001
10 =   1010
9^10 = 0011	-->3

右移

進(jìn)行右移運(yùn)算的值,右移幾位,則有效二進(jìn)制位右移幾位。等效于n>>m等于n整除2的m次冪。
9 =    1001
9>>1=  0100 	-->4
10 =   1010
10>>2= 0010		-->2

左移

進(jìn)行左移運(yùn)算的值,左移幾位,則有效二進(jìn)制位左移幾位。等效于n<<m 等于n乘以2的m次冪。
9 =     1001
9<<1 = 10010	-->18
10 =     1010
10<<2= 101000	-->40

8.運(yùn)算符的優(yōu)先級(jí)

1、乘、除 > 加、減
2、()> not > and > or
3、按位非(~) > 右移(>>)、左移 (<<)> 按位與(&) > 按位異或(^) > 按位或(|)
1、乘、除 > 加、減
2、()> not > and > or
3、按位非(~) > 右移(>>)、左移 (<<)> 按位與(&) > 按位異或(^) > 按位或(|)
一元運(yùn)算符: 同一時(shí)間只操作一個(gè)數(shù)字運(yùn)算的 ,例: ~1,-12
二元運(yùn)算符: 同一時(shí)間只操作兩個(gè)數(shù)字運(yùn)算的 ,例:5 + 3
1、一元運(yùn)算符優(yōu)先級(jí) > 二元運(yùn)算符
2、所有運(yùn)算符當(dāng)中 ** 冪運(yùn)算優(yōu)先級(jí)最高
3、所有運(yùn)算符當(dāng)中 = 賦值運(yùn)算符優(yōu)先級(jí)最低
算數(shù)運(yùn)算符 > 位運(yùn)算符 > 比較運(yùn)算符 > 身份運(yùn)算符 > 成員運(yùn)算符 > 邏輯運(yùn)算符>賦值運(yùn)算符

總結(jié)

(1)算數(shù)運(yùn)算符:  + - * / // % **
(2)比較運(yùn)算符:  > < >= <= == !=   
(3)賦值運(yùn)算符:  = += -= *= /= //= %= **=
(4)成員運(yùn)算符:  in 和 not in (針對(duì)于容器型數(shù)據(jù))
(5)身份運(yùn)算符:  is 和 is not (檢測(cè)兩個(gè)數(shù)據(jù)在內(nèi)存當(dāng)中是否是同一個(gè)值)  
(6)邏輯運(yùn)算符:  and or not
(7)位運(yùn)算符:    & | ~ ^ << >>

原文鏈接:https://blog.csdn.net/weixin_50627146/article/details/122650098

欄目分類
最近更新