温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

bool在python中引用对象的示例

发布时间:2020-12-07 09:28:56 来源:亿速云 阅读:164 作者:小新 栏目:编程语言

小编给大家分享一下bool在python中引用对象的示例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

布尔型对象只有两个值,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 都将试图判断其真值。

以上是“bool在python中引用对象的示例”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI