首页 > 编程语言 >Python布尔值属于数字类型吗?

Python布尔值属于数字类型吗?

时间:2023-04-27 11:38:56浏览次数:35  
标签:数字 Python 问题 布尔值 int 类型 父类


列郡讴歌惜,三朝出入荣。

大家好,我是皮皮。

一、前言

前几天在Python黄金交流群【dcpeng】问了一道Python类型的基础问题,如下图所示。


Python布尔值属于数字类型吗?_Python

二、实现过程

针对这个问题,大佬们一起讨论,给出了具体的结论,Python里的布尔值是数字类型。这里【崔峰】给了一个代码,如下所示:


Python布尔值属于数字类型吗?_编程语言_02

可以看到,布尔类型和int类型的实例是同一个,但是True1这两个变量指向的对象id不相同,便是同个不同的对象,一个布尔对象,一个是。

Python布尔值属于数字类型吗?_Python_03

后来【瑜亮老师】补充了最强王者交流群之前针对该类似问题的讨论记录。


Python布尔值属于数字类型吗?_编程语言_04

Python布尔值属于数字类型吗?_python_05

还记得【小小明大佬】的bool值加数字对字符串进行切片操作么?


Python布尔值属于数字类型吗?_人工智能_06

后来【格格物 এ คิดถึง】补充了一个重要的知识点,如下图所示。


Python布尔值属于数字类型吗?_python_07

布尔值属于数字类型。

Python布尔值属于数字类型吗?_Python_08

后来【flag != flag】也查到intbool的父类。


果然是真的。


Python布尔值属于数字类型吗?_编程语言_09

这里使用__base__属性查看父类,可以看到布尔类型的父类的确是int


Python布尔值属于数字类型吗?_python_10

顺利解决粉丝的问题。最后关于is==的区别,这里【瑜亮老师】给了一个比方,挺清晰了,一起学习下。


Python布尔值属于数字类型吗?_java_11

引申:

Python布尔值属于数字类型吗?_java_12

参考阅读:《Python中神秘的-5到256》:https://zhuanlan.zhihu.com/p/33907983


《Python中字符串的intern机制》: https://mrcuriosity.org/python-string-intern.html

如果有遇到问题,随时联系我解决,欢迎加入我的Python学习交流群。

三、总结

大家好,我是皮皮。这篇文章主要盘点了一道Python类型基础的问题,文中针对该问题给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。


标签:数字,Python,问题,布尔值,int,类型,父类
From: https://blog.51cto.com/u_13389043/6230086

相关文章

  • 不使用内置函数的情况下,如何使用Python实现求平均值、最大值和最小值?
    今日鸡汤寂寂竟何待,朝朝空自归。大家好,我是Python进阶者。一、前言昨天在Python最强王者交流群【鱼鱼鱼也不】问了一个Pandas处理的问题,下图是讨论截图:下图是他的原始数据:其实一开始是有点难以理解的。其实这个就是想判断两列的情况,用一列值填充另一列值。二、实现过程这里【猫药......
  • 软件测试选择学习java还是python?
     你好,我是小牛。当你学完软件测试基本理论,掌握业务测试流程,功能测试可以搞定,数据库和linux玩的也很溜时,接下来想进一步进阶,那么学习一门编程语言必不可少。同时,学习一门编程语言也是你成为自动化测试工程师乃至测试开发工程师的基本准入门槛。目前,编程语言五花八门,比如很多人大学......
  • python-docx对已存在的段落p1设置英文字体、中文字体、字号大小、居中对齐
    可以使用python-docx库中的样式Styles和元素Paragraph对已存在的段落进行设置。示例代码如下,可以将已存在的段落p1设置为英文字体Calibri,中文字体宋体,字号14,居中对齐:fromdocximportDocumentfromdocx.enum.textimportWD_PARAGRAPH_ALIGNMENTfro......
  • JavaScript把数字转为汉字数字的function
    functionnumberToChinese(num){vardigits=["","一","二","三","四","五","六","七","八","九"];varunits=["","十",&quo......
  • python-doc添加段落后设置字体、字号、加粗、对齐
    python-doc添加段落后设置字体、字号、加粗、对齐fromdocximportDocument#导入Document类,用于创建文档fromdocx.sharedimportPt,RGBColor#导入Pt类和RGBColor类,用于设置字体大小和颜色fromdocx.enum.textimportWD_PARAGRAPH_ALIGNMENT#导入WD_PARAGRAPH_ALI......
  • Python relative import local package module file All In One
    PythonrelativeimportlocalpackagemodulefileAllInOne$tree└──project├──package1│├──module1.py│└──module2.py└──package2├──__init__.py├──module3.py├──module4.py......
  • python yaml 配置文件的使用
    yaml介绍yaml的英文名称是YetAnotherMarkupLanguage,直译过来就是标记语言。yaml用的比较多的地方就是写配置文件,比如yaml配置文件在Kubernetes用的就非常广泛,学Kubernetes必须要先学yaml文件格式。yaml的基本语法:大小写敏感使用缩进表示层级关系缩进时不允许使用Tab......
  • c语言和python语言写爬虫哪个更好 ?
    c语言和python语言写脚本那个更好?这取决于具体的应用场景和需求。C语言是一种高效、灵活的编程语言,适合于底层系统开发、操作系统、嵌入式开发等领域。C语言可以直接操作内存,因此可以更好地控制程序的性能和资源利用。Python语言则是一种高级编程语言,具有简洁、易读、易写等特点......
  • python+playwright 学习-58 Jenkins上使用 Pipeline 运行 playwright 自动化脚本
    前言Dockerfile.focal可用于在Docker环境中运行Playwright脚本。这些镜像包括在Docker容器中运行浏览器所需的所有依赖项,还包括浏览器本身。playwright在linux系统上目前只支持Ubuntu系统的部分版本,centos和debian系统上是没法运行的。jenkins环境准备需安装2个跟d......
  • Python打印一个字典,输出带双引号
    Python中dict(字典)默认的表示方式是用单引号表示键和值,例如:my_dict={'key1':'value1','key2':'value2'}print(my_dict)这将输出:{'key1':'value1','key2':'value2'}如果你想使用双引号代替单引号进行表示,可以使用json......