var1 = 10
var2 = 5
var3 = 3.5
res1 = var1 // var2
res2 = var1 // var3
print(res1)
print(res2)
執行結果
2
2.0
(2)% 取餘python
res1 = 10 % 3.5
res2 = 99 % 7
res3 = -99 % 7
res4 = 99 % -7
print(res1)
print(res2)
print(res3)
print(res4)
執行結果 es6
3.0
1
6
-6
# 再來看下執行結果,是否是一臉懵逼,小學數學是否是感受白學了,想了半天以後.....瞎說,小學老師可不教這個,算了,不賣關子了 第一個和第二個執行結果應該都沒問題 第三個 :先算99%7 = 1,除數是負數,在餘數前加上-號,而後加上被除數,因此結果是 -1+7 = 6 第四個 :先算99%7 = 1,被除數是負數,在被除數前加上-號,而後加上餘數,因此結果是 1-7 = -6 雙擊6666了..............老鐵
(3) ** 冪運算
print(2**3)
print(4**3)
執行結果:
8
64
# 比較運算符只會產生2個結果 要麼True 要麼False var1 = 15 var2 = 18 res = var1 > var2 print(res) # False res = var1 < var2 print(res) # True res = var1 >= 15 # 只要知足一個條件即爲真 print(res) # True res = var1 <= 15 print(res) # True res = var1 == var2 # ==是判斷兩個值是否相等(is是判斷兩個元素id值是否一致,返回True或False) print(res) # False res = var1 != var2 # 不等於 print(res) # True
var1 = 9
var2 = 5
res = var1
print(res)
var1 += var2 # var1 = var1 + var2
print(var1)
var1 -= var2 # var1 -= var2
print(var1)
var1 *= var2 # var1 *= var2
print(var1)
var1 /= var2 # var1 = var1 / var2
print(var1)
var1 //= var2 # var1 = var1 // var2
print(var1)
var1 %= var2 # var1 %= var2
print(var1)
var1 **= var2 # var1 **= var2
print(var1)
執行結果
9
14
9
45
9.0
1.0
1.0
1.0
#(1)str 字符串須要是一個連續的片斷 strvar = "若是遇到你是一種錯,我寧願一錯再錯" res1 = "你" in strvar res2 = "遇到" not in strvar res3 = "我一" in strvar print(res1) # True print(res2) # False print(res3) # False #(2)list tuple set listvar = ["周全","陳鵬","陳根基"] res = "周全" in listvar print(res) # True tuplevar = "王新元","葉欣榮","秋波好","劉鵬程" res = "葉欣榮" not in tuplevar print(res) # False setvar = {'周立飛','高輝'} res = "高輝" in setvar print(res) # True #(3)dict 注意 : 判斷的是鍵 不是值 dictvar = {"zdx":"無用","gss":"石阡","mlh":"杜十娘"} res = "杜十娘" in dictvar res = "mlh" not in dictvar # True print(res)
var1 = 56 var2 = 56 res1 = var1 == var2 # (判斷兩個值是否相等) res2 = var1 is var2 # (判斷兩個值得地址是否相等) res3 = var1 is not var2 print(res1) print(res2) print(res3) 執行結果 True True False
# (1)and 邏輯與
# 全真則真,一假則假
res1 = True and True
res2 = False and True
res3 = False and False
res4 = True and False
print(res1) # True
print(res2) # False
print(res3) # False
print(res4) # False
# (2)or 邏輯或
# 全假則假,一真則真
res5 = True or True
res6 = True or False
res7 = False or True
res8 = False or False
print(res5) # True
print(res6) # True
print(res7) # True
print(res8) # False
#(3)not 邏輯非 至關於取反
res9 = not True
res10 = not False
print(res9) # False
print(res10) # True
# (4)邏輯短路
'''
False and 布爾 在and左邊若是時False 邏輯短路 右側不執行
True or 布爾 在or左邊若是是True 邏輯短路 右側不執行
在開發當中 ,當成"開關"使用
'''
False and print(123) # 邏輯短路 # False
True or print(456) # 邏輯短路 # True
True and print(789) # 789
# 邏輯運算符的優先級 () > not > and > or 括號的優先級是最高的
(七)位運算符: & | ~ ^ << >> es5
(1)按位與 &,二者都有,返回真 var1 = 19 var2 = 15 res = var1 & var2 print(res) # 3 """ 000000010011 000000001111 000000000011 # 3 """ (2)按位或 | 只要一個有,返回真 res = var1 | var2 print(res) # 31 ''' 000000010011 000000001111 000000011111 # 31 ''' (3)按位異或 ^ "若是二者不相同,返回真,二者相同返回假 res = var1 ^ var2 print(res) # 28 ''' 000000010011 000000001111 000000011100 # 28 ''' (4)<< 至關於 5 乘以 2的2次冪 res = 5 << 2 # 20 res = 4 << 3 # 4乘以2的3次冪 print(res) # 32 """ 000000101 # 至關於101向左移動了2個二進制位 000010100 # 20 """ (5)>> 至關於 5 除以 2的1次冪 res = 5 >> 1 print(res) # 2 """ 0000101 # 至關於101向右移動了1個二進制位 0000010 # 2 """ (6)~ 按位非 (針對於補碼來進行操做 ,連符號位都要改變) 公式 -(n+1) res = ~19 print(res) # -20 """ 000000000010011 (補碼) 111111111101100 (按位非-->取反做爲新的補碼計算) 111111111101100 (給補碼求原碼) 100000000010011 (反碼+1) 100000000010100 (原碼) => -20 按位非操做的是補碼,若是實在記不住就記住公式: -(n+1) """
全部運算符的優先級:
小括號的優先級最高 ()
** 符號優先級最高
= 符號優先級最低
乘,除 > 加減
() > not > and > or
(<< >> ) > & > ^ > |
除此以外剩下的運算符參考如下:
算術運算符 > 位運算符 > 比較運算符 > 身份運算符 > 成員運算符 > 邏輯運算符
賦值運算符單獨拿出來 , 用來把最後的結果進行賦值的
練習: 計算 4>5 and 5 <9>5<3 or 1>2 and 3<=3的結果 spa
至關於: 4>5 and (5 <9 and 9 >5and 5<3) or 1>2 and 3<=3 orm
False and False or False and True blog
False內存