python的布尔类型

本文介绍了Python中布尔类型的三种运算:与、或、非,以及短路计算的概念。布尔类型是Python的基础数据类型,运算结果决定程序执行的逻辑路径。布尔运算还可与其他数据类型结合,Python将特定值视为False,其余视为True。短路计算在确定运算结果后不再进行后续计算,有助于提高效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前面我们了解到,布尔类型是Python的基础数据类型,布尔类型只有True和False两种值,本节课我们学习布尔类型的集中运算。

布尔类型是Python的基础数据类型,布尔类型只有True和False两种值

与运算

只有两个布尔值都为 True 时,计算结果才为 True。 

True and True
True and False
False and True
False and False

 

 

或运算 

只要有一个布尔值为 True,计算结果就是 True。 

True or True 
True or False 
False or True 
False or False 

 

非运算 

 把True变为False,或者把False变为True:

not True
not False

 

我们学习这些运算有什么用呢?计算机程序是由无数的逻辑分支组成的,通过布尔运算,可以在计算机中实现条件判断,根据计算结果为True或者False,计算机可以自动执行不同的后续代码,因此学习布尔运算也是非常有必要的

布尔类型还可以与其他数据类型(字符串,数字等)做 and、or和not运算 例:

a = True
print(a and 0 or 99) # ==> 99

得到的计算结果不是布尔类型,而是数字99,这是为什么呢?

因为Python把0、空字符串和None看成False,其他数值和非空字符串都看成True,所以:

True and 0计算结果是0 
继续计算0 or 99计算结果是 99 
因此,结果是99。
需要注意的是,not计算的优先级是高于and和or的True and not False # ==> True 

True and not False # ==> True

在上述布尔计算中,先计算not False = True,然后再计算True and True,因此得到True的结果

短路计算 

  1. 在计算a and b时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b
  2. 在计算a or b时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b 

所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值