欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python中可用于布尔测试的,如何在Python中使用布尔值?

发布时间:2023/12/3 python 61 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python中可用于布尔测试的,如何在Python中使用布尔值? 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Python中的布尔值是整数的子类。布尔构造函数-

bool

。bool类继承自int类。

issubclass(bool,int) // will return True

isinstance(True,bool) , isinstance(False,bool) //they both True

True

False

是单例对象。它们将在应用程序的整个生命周期内保持相同的内存地址。当您键入

True

时, python内存管理器将检查其地址并获取值1。对于

False

, 其值为0。

您可以使用

is

(标识)或

==

(等于)运算符将任何布尔表达式与

True

False

进行比较。

int(True) == 1

int(False) == 0

但是请注意,

True

和1是不同的对象。您可以检查:

id(True) == id(1) // will return False

您也可以轻松看到

True > False // returns true cause 1>0

任何整数运算都可以对布尔值进行运算。

True + True + True =3

Python中的所有对象都有一个关联的真值。每个对象都有一个

True

值, 除了:

没有

说谎的

任何数字类型均为0(0. 0.0. 0+0j等)

空序列(列表, 元组, 字符串)

空的显示类型(字典, 馆藏等)

一个实现

__bool__

__len__

方法并返回

False

0

的自定义类。

Python中的每个类都有由特殊实例方法定义的真值:

__bool__(self) OR

__len__

当您调用

bool(x)

时, python实际上

x.__bool__()

如果

x

实例没有此方法, 它将执行

x.__len__()

如果不存在, 则默认值为

True

例如, 对于类

int

, 我们可以如下定义

bool

:

def __bool__(self):

return self != 0

对于布尔值(100),

100 !=0

将返回

True

。所以

布尔值(100)==true

您可以轻松检查

bool(0)

是否为

False

。这样, 对于int类的实例, 只有0将返回False。

另一个例子=bool([1,2,3])

[1,2,3]

没有特定的方法

__bool__()

, 但是具有

__len__()

, 并且由于其长度大于0, 它将返回

True

。现在您可以了解为什么空白列表返回

False

创作挑战赛新人创作奖励来咯,坚持创作打卡瓜分现金大奖

总结

以上是生活随笔为你收集整理的python中可用于布尔测试的,如何在Python中使用布尔值?的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。