当前位置: 首页 > 知识库问答 >
问题:

Python:空列表布尔比较[重复]

刘博雅
2023-03-14

嘿,好吧,所以我在阅读Python的文档,它指出任何空字符串、列表、字典,我想它们都被称为对象(我真的不理解对象的概念:\n如果有人能向我解释,我会很高兴)。无论如何,我的问题是x=[];bool(x)#False因此:bool(x==False)不应该是真的吗?但它返回false,这是我感到困惑的部分。


共有1个答案

金坚
2023-03-14

x是一个空数组。如果将空数组转换为布尔值,则得到False;但这并不意味着xFalse是一回事。

 类似资料:
  • 我知道我可以测试列表是否为空,如下所示: 但我不明白为什么下一个代码不是等效的:

  • 为什么与有不同的 ? 我正在使用Drools DSL,我必须实现一个规则: 我有这些DSL定义: 要求是以肯定的方式编写可重用的DSL语句,并具有否定它们的能力。

  • 问题内容: 这可能只是白痴,但对我来说有点混乱: 为什么在返回时返回? 问题答案: 您正在根据布尔值的文字值检查它。一样不会是真的。 如果将其投射,您将看到区别: 究其原因是真实的,因为你是比较相同的对象。与或相同。 当您看到类似的东西并且此检查从未通过时,困难就来了。那是因为您正在检查项目的 真实值 。按照惯例,所有这些项目都将通过布尔检查失败- 也就是说,它们的布尔值将为: (明显) 任何空序

  • 问题内容: 使用布尔值在列表上建立索引可以正常工作。虽然索引应该是整数。 以下是我在控制台中尝试的操作: 当我尝试打印错误时,int类型应该在索引中,这是显而易见的。然后,即使列表上的索引类型和存在,也可以正常工作,并将其自动转换为int类型并执行操作。 请解释内部发生了什么。我是第一次发布问题,因此如有任何错误,请原谅我。 问题答案: 发生的是布尔值实际上 是 整数。True为1,False为0

  • 问题内容: 以这个为例(摘自Java regexchecker不起作用): 是否用于检查的值是否重要? 我知道有这是颇为相似。但是,很明显,这个问题只针对原始对象,而不是对象包装器;因此,将不适用。 另外,应该以不同于其他的方式对待? 问题答案: 从您的评论看来,您正在寻找使用包装器类的“最佳实践” 。但是实际上 并没有 最佳实践,因为使用此类开始是一个坏主意。使用对象包装的唯一原因是在您绝对 必

  • 我有以下数组列表 现在我需要比较这两个数组,并检查是否有id中的任何值存在于empIds中。如果是,我需要以布尔值true退出。我是这样做的。 但这需要很多时间。有人能帮我优化一下吗?