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中使用布尔值?相关推荐

  1. matlab中10的负几次方怎么表示,matlab中e负2次方 数学中2e-01T表示什么含义,如何在MATLAB中实现?...

    数学中2e-01T表示什么含义,如何在MATLAB中实现? 这个简单啊,就是E是弹模,v是泊松比,2.63e-2指的是2.63乘以10的-2次方,T估计指的是温度吧 请问matlab里面exp函数怎么 ...

  2. python中none是什么类型_如何在Python中”测试”None类型?

    我有一个方法,它有时返回一个非类型的值.那么我怎样才能质疑一个非类型的变量呢?例如,我需要使用if方法 if not new: new = '#' 我知道这是错误的方式,我希望你理解我的意思. 我想这 ...

  3. python set 排序_python set 排序_如何在Python中使用sorted()和sort()

    点击"蓝字"关注我们 ?"Python基础知识" 大卫·丰达科夫斯基  著 18财税3班 李潇潇    译 日期:2019年5月6日 一. 使用sorted() ...

  4. python测速程序_tespeed - 测试网速的Python工具

    许多电脑呆子知道可以用一些测速网站测试网速,但是这个不能在测试中给你足够的控制.Linux用户喜欢在终端中输入命令来完成任务,至少我就是这样的. tespeed是一款有很多特性的Python工具,可以 ...

  5. python中glob模块怎么下_如何在Python中使用glob.glob模块搜索子文件夹?

    如何在Python中使用glob.glob模块搜索子文件夹? 我想在文件夹中打开一系列子文件夹,找到一些文本文件并打印一些文本文件行. 我用这个: configfiles = glob.glob('C ...

  6. python中2d_【IT专家】如何在Python中复制一个2D数组?(复制)

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 如何在 Python 中复制一个 2D 数组? ( 复制 ) 如何在 Python 中复制一个 2D 数组 ?( 复制 )[ 英 ]How to  ...

  7. cucumber测试_如何在Cucumber中进行后端测试

    cucumber测试 Cucumber是一种规范语言的执行框架. 它并不是要成为测试语言,而是用于创建测试自动化. Cucumber最适合出现一些实际参与者互动并取得某种成果的情况. 当可以从用户的角 ...

  8. python中用什么函数读取字符串_如何在Python中获得函数名作为字符串?

    在Python中,如何在不调用函数的情况下以字符串的形式获得函数名? 1 2 3 4def my_function(): pass print get_function_name_as_string( ...

  9. python方法重载_关于类:如何在Python中使用方法重载?

    我尝试在python中实现方法重载: class A: def stackoverflow(self): print 'first method' def stackoverflow(self, i) ...

最新文章

  1. excel调用python编程-使用Python对Excel进行读写操作
  2. Guice系列之用户指南(五)
  3. 分布式ActiveMQ集群--转载
  4. 视频 + PPT | 财富管理转型,券商如何精细化运营?
  5. 使用adb install 时 提示error: more than one device and emulator
  6. LF AI Day中国站火热报名中
  7. Chrome的console
  8. python库--pandas--Series.str--字符串处理
  9. Latex空格一个字符\空格
  10. HTML学习总结(3)——标签a/head/style/img
  11. 时间戳转化为YYYY-MM-DD-XX-MM-UU日期格式
  12. Python实现图片标记分类文件夹自动归类文件的脚本
  13. JQUERY冻结table行或列js
  14. python中input()函数的返回是什么类型_inputbox函数返回值的类型是什么?
  15. Golang 加密方法
  16. overflow溢出处理
  17. Observability——Datadog
  18. 微生物组-宏基因组分析(线上/线下同时开课,2021.8)
  19. 股票交易日(动态规划)----美团2016研发工程师编程题(二)
  20. 凹凸贴图(Bump Mapping)

热门文章

  1. spring bean依赖_Spring @Configuration并将bean依赖项作为方法参数注入
  2. 到无限(溪流)和超越!
  3. java陷阱常见面试题_Java常见陷阱
  4. 在Spring WebFlux中创建多个RouterFunction
  5. 无需再忙了:Lambda-S3缩略图,由SLAppForge Sigma钉牢!
  6. 用Java解析:您可以使用的所有工具和库
  7. javame_JavaME:Google静态地图API
  8. findbugs-dea_FindBugs和JSR-305
  9. 使用RxJava和SseEmitter进行服务器发送的事件
  10. 净值:测试编码器/解码器