Python :: bool(float('0.0')) - >返回False?为什么?

时间:2017-09-29 12:08:14

标签: python python-2.7

bool(float('0.0')) - >返回False?为什么呢?

我可以轻松地将案例float('0.0')键入0.0,无任何例外。

2 个答案:

答案 0 :(得分:0)

通常在许多编程语言中,0的数值被视为可转换为逻辑False。相反,您可以尝试bool(float('0.1'))并将其评估为True(作为0.1 != 0)。

答案 1 :(得分:0)

可以测试任何对象的真值,用于if或while条件或下面布尔运算的操作数。以下值被视为false:

None

False

zero of any numeric type, for example, 0, 0L, 0.0, 0j.

any empty sequence, for example, '', (), [].

any empty mapping, for example, {}.

instances of user-defined classes, if the class defines a __nonzero__() or __len__() method, when that method returns the integer zero or bool value False.2.5

所有其他值都被认为是真的 - 因此许多类型的对象始终为真。