一、如下是以下值就認為是假
1、None–>None值
2、False–>False值
3、0–>數值零不管它是int,float還是complex類型
4、”,(),[]–>任何一個空的序列
5、{}–>空的集合。
二、所有不滿足False條件的值就當成True
優先級:
not > and > or
True and True ==> True True or True ==> True
True and False ==> False True or False ==>True
False and True ==> False False or True ==> True
False and False ==> False False or False ==> False
短路邏輯
表達式從左至右運算,若 or 的左側邏輯值為 True ,則短路 or 后所有的表達式(不管是 and 還是 or),直接輸出 or 左側表達式 。
表達式從左至右運算,若 and 的左側邏輯值為 False ,則短路其后所有 and 表達式,直到有 or 出現,輸出 and 左側表達式到 or 的左側,參與接下來的邏輯運算。
若 or 的左側為 False ,或者 and 的左側為 True 則不能使用短路邏輯。
(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or( 7 and 8 and 9)
舉例:
a and b or c
下面分幾種情況:
如果a為真b為真則返回b,
如果a b均為假則返回c
如果a為假則b被短路返回c,
如果a為真b為假則返回c,