Python 中ZeroDivisionError: float division by zero错误

Python “ZeroDivisionError: float division by zero” 当我们试图将一个浮点数除以 0 时出现。要解决该错误,请使用 if 语句检查我们除以的数字是否不为零,或处理该错误 在 try/except 块中。

下面是一个产生上述错误的示例代码

a = 15.0
b = 0

# ⛔️ ZeroDivisionError: float division by zero
result = a / b

Python 中ZeroDivisionError: float division by zero错误

当我们除以 0 时,不清楚期望值是多少,因此 Python 会抛出一个错误。

当我们将一个数除以 0 时,结果趋于无穷大。

解决错误的一种方法是检查我们除以的值是否不为 0。

a = 15.0
b = 0

if b != 0:
    result = a / b
else:
    result = 0

print(result)  # ?️ 0

我们检查 b 变量是否不存储 0 值,如果不是,我们将 a 除以 b。

如果将结果变量设置为 0,如果 b 等于 0 适合我们的用例,我们可以将其缩短为一行。

a = 15.0
b = 0

result = b and a / b

print(result)  # ?️ 0

表达式 x 和 y 首先计算 x,如果 x 为假,则返回其值,否则返回 y。

或者,我们可以使用 try/except 语句。

a = 15.0
b = 0

try:
    result = a / b
except ZeroDivisionError:
    result = 0

print(result)  # ?️ 0

我们尝试将 a 除以 b,如果我们得到 ZeroDivisionError,则 except 块将结果变量设置为 0。

以下是我们可能意外获得零值的一些常见方式。

print(int())  # ?️ 0
print(int(0.9))  # ?️ 0