python布尔测试对象_Python基础之果断的布尔对象及表达式

布尔对象

布尔(英文叫 bool )对象是只有两种取值的对象: True 和 False

对应 真 和 假, 或者说 是 和 否。

很多事情的回答 只有正反两种答案:是或者 否

比如: 今天是星期天吗?

要么 是 ,要么 否。

Python中的布尔对象 对应 是 和 否 只有两种取值。

其中 True 对应 是, False 对应 否。

布尔表达式

产生布尔值的表达式,就是 布尔表达式。

通常有如下几种

是否相等

是否相等的表达式 像这样

1 == 1

用 == 连接两个比较对象。

如果 两个比较对象相等,解释器运算结果为 True

如果不相等,解释器运算结果为 False

请运行Python解释器命令行,输入如下语句

1 == 1

返回值为 True

1 == 2

返回值为 False

1 == '1'

返回值为 False。想一想,为什么?

'1' == '1'

返回值为 True

是否不相等

用 != 连接两个比较对象。

如果两个比较对象不相等,解释器运算结果为 True

如果相等,解释器运算结果为 False

请运行Python解释器命令行,输入如下语句

1 != 1

返回值为 False

1 != 2

返回值为 True

1 != '1'

返回值为 True

'1' != '1'

返回值为 False

是否大于

用 > 连接两个比较对象。

如果前面的对象大于后面的对象,解释器运算结果为 True

否则,运算结果为 False

请运行Python解释器命令行,输入如下语句

1 > 1

返回值为 False

1 > 0

返回值为 True

1 > 2

返回值为 False

是否大于等于

用 >= 连接两个比较对象。

如果前面的对象大于或者等于后面的对象,解释器运算结果为 True

否则,运算结果为 False

请运行Python解释器命令行,输入如下语句

1 >= 1

返回值为 True

1 >= 0

返回值为 True

1 >= 2

返回值为 False

是否小于

用 < 连接两个比较对象。

如果前面的对象小于后面的对象,解释器运算结果为 True

否则,运算结果为 False

请运行Python解释器命令行,输入如下语句

1 < 1

返回值为 False

1 < 0

返回值为 False

1 < 2

返回值为 True

是否小于等于

用 <= 连接两个比较对象。

如果前面的对象小于或者等于后面的对象,解释器运算结果为 True

否则,运算结果为 False

请运行Python解释器命令行,输入如下语句

1 <= 1

返回值为 True

1 <= 0

返回值为 False

1 <= 2

返回值为 True

条件组合

有的时候,条件表达式 还会 组合起来 成为一个更大的表达式

条件表达式 主要有3 种组合关系

且 的 条件组合

这种组合关系是用 and 关键字 连接的,如下

表达式1 and 表达式2

这种组合,只有表达式1 和 表达式2 都成立 (也就是计算结果都为True),最终的结果才成立(为True)

任何一个表达式为 False ,结果都是False

你可以打开Python解释器,依次输入如下的语句,看看结果是什么

True and True # 结果为 True

True and False # 结果为 False

False and True # 结果为 False

False and False # 结果为 False

num1 = 5

str1 = 'ok'

num1 > 4 and str1 == 'ok' # 结果为 True

num1 > 4 and str1 == 'bad' # 结果为 False

num1 > 6 and str1 == 'ok' # 结果为 False

num1 > 6 and str1 == 'bad' # 结果为 False

num1 > 4 and str1 == 'ok' and num1 > 5 # 结果为 False

或 的 条件组合

这种组合关系是用 or 关键字 连接的,如下

表达式1 or 表达式2

这种组合,只要表达式1 和 表达式2 任何一个成立 (也就是任何一个计算结果为True),最终的结果才成立(为True)

如果两个表达式计算结果都为 False ,结果才是False

你可以打开Python解释器,依次输入如下的语句,看看结果是什么

True or True # 结果为 True

True or False # 结果为 True

False or True # 结果为 True

False or False # 结果为 False

num1 = 5

str1 = 'ok'

num1 > 4 or str1 == 'ok' # 结果为 True

num1 > 4 or str1 == 'bad' # 结果为 True

num1 > 6 or str1 == 'ok' # 结果为 True

num1 > 6 or str1 == 'bad' # 结果为 False

num1 > 6 or str1 == 'ok' or num1 != 5 # 结果为 True

num1 > 6 or str1 == 'sk' or num1 != 5 # 结果为 False

如果 and 和 or 一起使用, 注意 是先计算 and 部分, 其结果 再和 or 一起计算,比如这个表达式

6 > 5 or 'sk' == 'sk' and 4 == 5

就要先计算

'sk' == 'sk' and 4 == 5

结果是 False

然后这个False 再和前面的计算,就是

6 > 5 or False

所以最后的结果是True

如果我们就是想要: 先计算前面的or 部分, 然后再和 后面 and 一起计算呢?那么就可以使用括号,想这样

(6 > 5 or 'sk' == 'sk') and 4 == 5

就要先计算

(6 > 5 or 'sk' == 'sk')

结果是 True

然后这个结果 True 再和前面的计算,就是

True and 4 == 5

所以最后的结果是False

可以看出, 不用的优先级会导致不同的结果

not 的 合条件组

这种组合其实就是把后面的布尔表达式的结果反过来

这种组合关系是用 not 关键字 的,如下

not 表达式1

not 加在条件表达式1的前面,会反转其结果。

表达式1 计算结果为True, 最终的结果为 False

表达式1 计算结果为False,最终的结果为 True

你可以打开Python解释器,依次输入如下的语句,看看结果是什么

not True # 结果为 False

not False # 结果为 True

num1 = 5

str1 = 'ok'

not num1 > 4 # 结果为 False

not str1 == 'sk' # 结果为 True

如果 and 和 or 一起使用, 注意 是先计算 not , 再计算 and 部分, 最后再计算 or

这样的表达式

not 4 > 6 or 'sk' == 'ok' and 4 > 3

先计算 not 4 > 6 得到 True

再计算 'sk' == 'ok' and 4 > 3 得到 False

将上面的结果 用 or 连接 ,就是 True or False ,所以最后结果是 True

如果大家想了解完整的Python运算符的优先级,可以点击这里,参考官网操作符优先级表

转自:判断语句,百度【白月黑羽】移步到Python在线教程了解更多内容!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值