Python逻辑运算符

and or not

优先级:() > not > and > or

1.or

在python中,逻辑运算符or,x or y, 如果x为True则返回x,如果x为False返回y值。因为如果x为True那么or运算就不需要在运算了,因为一个为真则为真,所以返回x的值。如果x的值为假,那么or运算的结果取决于y,所以返回y的值。

1 print(1 or 2)   # 1
2 print(3 or 2)   # 3
3 print(0 or 2)   # 2
4 print(0 or 100) # 100
5 print(0 or 0)

2.and

在python中,逻辑运算符and,x and y,如果x为True则返回y值。如果x为False则返回y值。如果x的值为True,and的运算不会结束,会继续看y的值,所以此时真与假取决于y的值,所以x如果为真,则返回y的值。如果x为假,那么and运算就会结束运算过程了,因为有一个为假则and为假,所以返回x的值。

print(1 and 2)  # 2
print(3 and 0)  # 0
print(0 and 2)  # 0
print(3 and 2)  # 2
print(0 and 0)  # 0

3.混合例子与解析

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

按照从左向由,优先级高的先执行优先级高的规则,首先因为比较运算符优先级高于逻辑运算符,很简单,如果运算符低于了逻辑运算符优先级那还如何运算呢。and 优先级大于 or,not优先级大于and和or

not 4 > 5 为True

   1 > 2 为 False

3 < 2 为 False

Flase and 3,因为False为假所以and不在运算直接返回False

4 and False,因为4为真所以and运算符会继续运算后面的,以False为主,所以返回False。

   False or False,为False

False or True,为True

False or False,因为False为假,所以or运算符会继续运算后面的,以False为主,所以返回后面的False值

摘自:https://www.cnblogs.com/whylinux/p/9501470.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值