python——and和or逻辑运算符用法详解

一、概述

python中的逻辑操作符and 和or,也叫惰性求值,由于是惰性,只要确定了值就不往后解析代码了。


二、用法说明

(一)and 用法

文字说明:

第一种情况(判断语句):

从右往左解析,只要第一个是False,就是False,后面的就不需要运算了,整个都是错误的,无论后面是正确还是错误。记住一句话所有的判断语句除非都为True,整个句子为True,但凡有一个为False,整个都是False。

举例说明:

print (1 > 2 and 0 < 1)#False
print (1 > 2 and 0 > 1) #False
print (1 < 2 and 0 < 1)#True
print (1 > 2 and 0 < 1)#False
print (1 > 2 and 0 < 1 and 2 > 0 and 5 > 1) #False

第二种情况(都为数字时):

从右往左解析,0为False,1为True。同理,记住一句话语句中没有0整个句子就为True,但凡有一个为0,整个都是句子就为0。

举例说明:

print (0 and 5) #0
print (1 and 5) #5
print (5 and 0) #0
print (10 and 0 and 5 and 0)#0
print (6 and 4 and 3)#3
print (1 and 4 and 2 and 6) #6

(二)or 用法

文字说明:

第一种情况(判断语句):

从左往右解析,依次看语句是否为True,如果为True,整条语句都为True;不是的话,看下一条语句,同理,若都不是整条语句为False。

举例说明:

print (1 > 2 or 0 < 1) #True
print (1 < 2 or 0 > 1) #True
print (1 > 2 or 0 > 1) #False
print (1 < 2 or 0 > 1 or 2 > 3)#True

第二种情况(都为数字时):

从左往右依次解析,找到0了,看下一个数。不是0的话,整条语句就是不是0的那个值。

举例说明:

print (0 or 10) #10
print (1 or 2)  #1
print (1 or 0)  #1
print (7 or 5 or 5)#7
print (9 or 5 or 6 or 0 or 8)#9

三、两个集合and 和or操作的时候的问题

举例说明:


四、优先级问题(and > or)

举例说明:

print (1 and 5 or 0) #先计算1 and 5 为5再计算5 or 0 为5
print (1 or 5 and 0 or 6 and 0)
'''
先计算5 and 0为0,6 and 0为0
整个语句就变为1 or 0 or 0结果为1
'''

来源:xiaochuhe.

物联沃分享整理
物联沃-IOTWORD物联网 » python——and和or逻辑运算符用法详解

发表评论