天天看點

python運算符詳解

不知道别人是怎麼學這些pyhton運算符的,會寫一些基礎的python腳本,可這些規則我經常搞錯,作為一名運維人員,這看似簡單的東西卻偏偏是一些公司面試經常考的東西,覺得很有必要再次總結一下,友善以後翻閱。

x or y ,如果x==0,那麼就是y,否則就是x,and的算法和or是相反的,可以反着推就對了

print(1 or 2) #答案1

print(2 or 3) #答案2

print(0 or 3) #答案3

print(0 or 4) #答案4

print(0 or 1 or 3 or 0 or 5) #答案1

print(1 and 3) #答案3

print(0 and 1) #答案0

print(0 and 5) #答案0

print(2 and 5) #答案5

print(1 or 2 and 3) #答案1

print(2 or 3 and 5 or 4) #答案2

print(0 or 4 and 3 or 7 or 9 and 6) #答案3

#思路:先算and,再算or,結果是0 or 3 or 7 or 6,最終結果為3

and or not同時存在,先算括号,然後算not,再算and,最後算or

print(3 > 4 or 4 < 3 and 1==1)

#思路:先算and,4<3是False,1==1是True,再算3>4是False,等于說是False or False and True,這時候False and True的結果是False,是以是False or False的結果是False

print(1 < 2 and 3 < 4 or 1 > 2)

#思路:True and True or False,然後是True or False,是以最終結果是True

print(2 > 1 and 3 < 4 or 4 > 5 and 2 <1)

#思路:True and True or False and False ,其實看or 前面的True and True 就知道本題答案是True,因為or有一個結果為True,最終結果就是True