从零开始学习python(4)——布尔类型

从零开始学习python(4)——布尔类型明明输入的是假和 False 为什么返回的还是 True 其实这只是一个小小的障眼法 因为它们有用双引号括起来所以他们是字符串 在字符串中只有空字符才会返回 False 即使是输入空格也会返回 True 测试代码 gt gt gt 2 gt

大家好,欢迎来到IT知识分享网。

布尔类型

布尔类型是一种数据类型,它的值只有真与假,在Python中用True和False来表达。

我们先来IDLE中做一下测试,通过使用内建函数bool()可以直接给出相应的结果:

 >>> bool("假")  True  >>> bool("False") #字符串  True  >>> bool(False)  False  >>> bool("") #双引号中没有内容  False  >>> bool(" ") #输入空格  True  >>> bool(0)  False  >>> bool(0.0)  False  >>> bool(0j)  False  >>> bool(123)  True

分析

  1. 有朋友可能好奇,什么?明明输入的是假和False为什么返回的还是True,其实这只是一个小小的障眼法,因为它们有用双引号括起来所以他们是字符串(第一第三行),在字符串中只有空字符(第七行)才会返回False,即使是输入空格(第九行)也会返回True。
  2. 在数字类型中也只有特定的几个数才会返回False,其余的都是True。

通过测试我们发现,只有在一些特定情况下,bool()才会返回False,总结为以下几种:

  1. 常量None和False
  2. 0,0.0,0j,Decimal(0),Fraction(0, 1)
  3. 空字符串,空集合、序列等,”,(),[],set(),range(0)

这里面有些对我们来说看着多都很陌生,不过没关系,以后会慢慢接触到的。

布尔运算

布尔类型的运算符有三种分别是:and,or,not,关于这三个逻辑运算符,以及其他常用运算符,我之前有进行过总结:从零开始学习python(1)——表达式,语句,变量与运算符 。

测试代码:

 >>> 2 > 3 and 3 > 2  False  >>> 2 > 1 and 3 > 1  True  >>> 2 > 1 or 3 < 5  True  >>> 1 > 4 or 3 > 2  True  >>> 1 > 3 or 3 > 6  False  >>> not False  True  >>> not 250  False
  1. 对于and运算符来说必须两边的操作数都为True结果才会返回True,否则返回False。
  2. 对于or运算符来说,只要有一个操作数为True,结果即为True,否则返回False。
  3. 对于not运算符来说,就是将True变为False,将False变为True。

Python中任何对象都能直接进行真值测试(测试该对象的布尔类型值为True还是False),当然也可以作为布尔逻辑运算符的作操作数,也可以说任何类型都可以作为布尔逻辑运算符的操作数。

 >>> 2 and 4  4  >>> 3 or 5  3  >>> "python" and "C"  'C'  >>> "Hello" or 123  'Hello'

那么为什么会是这样呢?这里就留给大家去思考了,后面我也会重新写一篇文章进行解答。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/189232.html

(0)
上一篇 2025-09-29 09:20
下一篇 2025-09-29 09:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信