☰ 目录

ZeroDivisionError: 尝试除以零

问题描述 / 错误信息
<pre><code class="language-python">Traceback (most recent call last):
  File "example.py", line 10, in &lt;module&gt;
    result = divide(10, 0)
  File "example.py", line 7, in divide
    return a / b
ZeroDivisionError: division by zero</code></pre>

在运行上述代码时,程序试图执行除法运算,其中除数为零。这会导致ZeroDivisionError异常抛出,因为数学上不允许除以零。

解决方案

为了避免这个错误,可以在函数中添加对除数的检查,确保其不为零。如果除数为零,则返回一个适当的错误消息或其他默认值。

def divide(a, b):
    if b == 0:
        return "Error: Division by zero is not allowed."
    return a / b

# 测试修复后的函数
result = divide(10, 0)
print(result)  # 输出: Error: Division by zero is not allowed.

result = divide(10, 2)
print(result)  # 输出: 5.0

在这个修复后的版本中,divide 函数首先检查 b 是否等于零。如果是,则返回一个错误消息;否则,执行正常的除法运算。这样就避免了程序因未处理的异常而崩溃。