当我们要进行逻辑判断时,根据不同的给定条件,会输出真或假的结果。我们今天要说的bool借用了数学中逻辑判断的思想,所以很容易理解它的用法。因为 bool 的值是 true 或 false,所以结果输出中只会出现一个。下面介绍基于bool的使用来引用对象的方法。
布尔型对象只有两个值,
True和False,它们会放在缓冲池共享区,无论有多少次引用,只会创建一个对象。
c = True #变量c指向了浮点型对象,值为1.5
print("c = {}, c的地址:{}, c的类型为:{}".format(c, id(c),type(c)))
d = True #浮点型对象没有共享缓冲区,会新建一个对象
print("d = {}, d的地址:{}, d的类型为:{}".format(d, id(d),type(d)))
print("c和d是否为同一对象:{}".format(c is d)) #c和d指向了相同对象
print(id(c is d))
运行结果:
c = True, c的地址:4527372208, c的类型为:<class 'bool'>
d = True, d的地址:4527372208, d的类型为:<class 'bool'>
c和d是否为同一对象:True
4527372208
所有的
True都是引用同一个对象,它们的地址都是&4527372208。同理,False也是一样。
在
Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。
>>> True + True
2
>>> True - False
1
>>> True * False
0
>>> True / False
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: int division or modulo by zero
在某些地方(如
if 语句),Python 所预期的就是一个可计算出布尔类型值的表达式。这些地方称为布尔类型上下文环境。事实上,可在布尔类型上下文环境中使用任何表达式,Python 都将试图判断其真值。
python中bool引用对象的方法都在这里分享给大家。用户多的可以课后自己去挖掘。限于篇幅,小编在此不再赘述。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python中的任务封装协程12/12
- ♥ Python 教程基础:列表理解12/12
- ♥ 如何在python中开始一个新行08/16
- ♥ 深入了解 Python 中的 asyncio 库——线程池11/15
- ♥ python是如何实现封装的11/15
- ♥ python如何解决复数?11/05
内容反馈