ZeroDivisionError:在 Python 中浮点数除以零

ZeroDivisionError:在 Python 中浮点除以零

ZeroDivisionError: float division by zero in Python

Python“ZeroDivisionError: float division by zero”发生在我们尝试将浮点数除以0. 要解决错误,请使用if语句检查您除以的数字是否不为零,或者在
try/except块中处理错误。

zerodivisionerror float 除以零

下面是错误如何发生的示例。

主程序
a = 15.0 b = 0 # ⛔️ ZeroDivisionError: float division by zero result = a / b

当我们除以 时不清楚期望值是多少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

否则,我们将result变量设置为0请注意,这可以是适合您的用例的任何其他值。

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

主程序
a = 15.0 b = 0 result = b and a / b print(result) # 👉️ 0

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

由于0是假值,如果b 示例中的变量存储了0值,则返回它,否则返回除以的a结果b

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

主程序
a = 15.0 b = 0 try: result = a / b except ZeroDivisionError: result = 0 print(result) # 👉️ 0

我们尝试除以ab如果我们得到 a ZeroDivisionError,该except
块将
result变量设置为0

解决错误的最佳方法是弄清楚变量在何处被分配 a0并检查这是否是预期的行为。

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

主程序
print(int()) # 👉️ 0 print(int(0.9)) # 👉️ 0

结论#

Python“ZeroDivisionError: float division by zero”发生在我们尝试将浮点数除以0. 要解决错误,请使用if语句检查您除以的数字是否不为零,或者在
try/except块中处理错误。