设计一个程序,让用户输入两个数,进行除法运算,完美处理异常。 结果1: 请输入一个数字:6 请输入另一个数字:2 6 / 2 = 3.0 计算结束,感谢参与。 结果2: 请输入一个数字:6 请输入另一个数字:0 你输入的数无效! 计算结束,感谢参与。
时间: 2024-10-18 13:18:56 浏览: 16
设计一个这样的程序,你需要使用Python的try-except语句来捕获并处理可能出现的异常。这里是一个简单的示例代码:
```python
def divide_numbers():
try:
num1 = float(input("请输入第一个数字: "))
num2 = float(input("请输入另一个数字: "))
if num2 == 0:
raise ValueError("你输入的数无效!") # 预防除以零的情况
result = num1 / num2
print(f"{num1} / {num2} = {result:.1f}")
except ValueError as e:
print(e)
except Exception as e:
print("发生了一个错误:", str(e))
finally:
print("计算结束,感谢参与。")
divide_numbers()
```
在这个程序中:
- 用户输入的数字被转换为浮点数,如果用户输入的是非数字,则会引发`ValueError`异常。
- 如果用户尝试除以零,我们主动触发`ValueError`,提示“你输入的数无效!”
- 除了`ValueError`,还使用了通用的`Exception`来捕获任何未预期的错误。
- `finally`块保证无论是否发生异常,都会显示“计算结束,感谢参与。”的信息。
阅读全文