当前位置: 首页 > 面试题库 >

Python-为什么list.append在布尔上下文中求值为false?

孙阳舒
2023-03-14
问题内容

是否有list.append评估为假的原因?还是只是成功时返回0的C约定起作用?

>>> u = []
>>> not u.append(6)
True

问题答案:

大多数更改容器就位返回值的Python方法None- 命令-查询分离原理的应用。(Python总是很务实,所以一些变数在获取它时确实会返回一个可用的值,否则会很昂贵或一团糟-该pop方法是这种实用主义的一个很好的例子-但是这些绝对是例外,不是规则,并且没有理由append例外)。



 类似资料:
  • 问题内容: 我以为Python信任程序员。 问题答案: 圭多对此的看法: 我昨晚想到了这一点,意识到根本不应该允许您继承bool!子类仅在具有实例时才有用,但是仅存在bool子类的实例将打破不变的事实,即True和False是bool的唯一实例!(C的子类的实例也是C的实例。)我认为重要的是不要提供后门来创建其他bool实例,因此我认为bool不应是子类的。 参考: http //mail.pyt

  • 问题内容: 在C ++中,为什么布尔需要一个字节来存储true或false,而只需要一位就足够了,例如0代表false,1代表true?(为什么Java也需要一个字节?) 其次,使用以下方法更安全? 第三,即使是安全的,上述现场技术真的有帮助吗?既然我听说我们在那里节省了空间,但是编译器生成的访问它们的代码仍然比生成访问基元的代码更大,更慢。 问题答案: 为什么布尔只需要一个字节就可以存储真或假,

  • 我觉得这给了我很小的灵活性每当我使用这个函数。使用此函数时,我通常会查找元素的第一次出现,但它只返回,我发现这一点有些欠缺。 使用此函数的主要原因是每当找到元素时,都会循环,因此使用会失去作用,因为不会短路。是相同的。 我是遗漏了什么,还是必须使用循环来获取JavaScript中的第一个匹配元素?

  • 问题内容: 我遇到了这种语法: 这个带有两个点的语法是什么? 在哪里可以找到有关它的信息? 它仅适用于布尔值还是以其他不同方式实现? 问题答案: 是条件运算符。(不只是一部分,整个方法参数是示例中条件运算符的一种用法。) 它通常被称为三元运算符,但这只是其本质的一个方面-具有三个操作数- 而不是其名称。如果在Java中引入了另一个三元运算符,则该术语将变得模棱两可。之所以称为条件运算符,是因为它有

  • 问题内容: 我有一个关于片段中上下文使用情况的问题。我的问题是,我总是收到NullpointerException。这是我的工作: 创建一个扩展SherlockFragment的类。在该类中,我有另一个Helper类的实例: 这是其他Helper类的摘录: 每次调用时(例如context.getResources()),我都会收到NullPointerException。这是为什么? 问题答案:

  • 我对JAVA中的字符串比较情况有一些疑问 这是一个代码 } 这是我对5以上输出的看法。 > 's3==s4' `s1.equals(s3)' 's4.intern()==s4' “s5==s2”:s5是s1。s1与s2相同。 我的意见是真的吗?我真的需要帮助...我马上就要考试了谢谢大家!