1. 程式人生 > >python and or 詳解

python and or 詳解

表達 onclick asc AR topic cli true pytho IT

一.純 and 和 or 語句

1. 在純and語句中,如果每一個表達式都不是假的話,那麽返回最後一個,因為需要一直匹配直到最後一個。如果有一個是假,那麽返回假
2. 在純or語句中,只要有一個表達式不是假的話,那麽就返回這個表達式的值。只有所有都是假,才返回假
3. 在or和and語句比較難表達,總而言之,碰到and就往後匹配,碰到or如果or左邊的為真,那麽就返回or左邊的那個值,如果or左邊為假,繼續匹配or右邊的參數。

技術分享圖片
(False or 1)  輸出1

(1 or False)    輸出1

(True or 1)輸出前者

(
1 or True) 輸出前者 (True and 1) 輸出後者 (1 and True) 輸出後者 (False and 1)輸出False (1 and False) 輸出False
技術分享圖片

二.對Python而言

其一, 在不加括號時候, and優先級大於or

其二, x or y 的值只可能是x或y. x為真就是x, x為假就是y

第三, x and y 的值只可能是x或y. x為真就是y, x為假就是x

顯然

對於, 1 or 5 and 4: 先算5 and 4, 5為真, 值為4. 再算1 or 4, 1 為真,值為1

對於, (
1 or 5) and 4: 先算1 or 5, 1為真, 值為1. 再算1 and 4, 1為真,值為4

這是什麽,這是什麽,這是知識點,對,只是一個知識點!

在Python中,空字符串為假,非空字符串為真。非零的數為真。

數字和字符串之間、字符串之間的邏輯操作規律是:

對於and操作符:

只要左邊的表達式為真,整個表達式返回的值是右邊表達式的值,否則,返回左邊表達式的值

技術分享圖片
對於or操作符:

只要兩邊的表達式為真,整個表達式的結果是左邊表達式的值。

如果是一真一假,返回真值表達式的值

如果兩個都是假,比如空值和0,返回的是右邊的值。(空值或0)
技術分享圖片

python and or 詳解