python - ZeroDivisionError 即使在使用 try 和 except 之后
问题描述
# program to print the reciprocal of even numbers
num = int(input("Enter a number: "))
try:
assert num % 2 == 0
except ZeroDivisionError:
print(err)
except:
print("Not an even number!")
else:
reciprocal = 1/num
print(reciprocal)
该代码不起作用并给我以下错误:
---------------------------------------------------------------------------
ZeroDivisionError Traceback (most recent call last)
<ipython-input-41-ce890375558f> in <module>
8 print("Not an even number!")
9 else:
---> 10 reciprocal = 1/num
11 print(reciprocal)
ZeroDivisionError: division by zero
解决方案
“reciprocal = 1/num”这一行必须在 try 部分。像这样的东西:
# program to print the reciprocal of even numbers
num = int(input("Enter a number: "))
try:
assert num % 2 == 0
reciprocal = 1/num
print(reciprocal)
except ZeroDivisionError:
print(err)
except:
print("Not an even number!")
推荐阅读
- python - 如何将 nifti (.nii) 文件传递给 tensorflow 进行神经网络训练?
- sql - 插入中的雪花多项选择返回意外值的错误
- r - 在R中的列中展平列表
- python - 如何获得最后三个销售计数天和当天剩余的销售计数?
- html - 使卡片列中的第二张卡片填充所有剩余宽度
- image - 如何以编程方式在静态背景上生成不同文本的图像?
- python - 如何添加存在于具有相同键的列表中的多个字典?
- python - PyODBC - CSV 到 SQL 表 - 如何处理 NaN 值
- sql - 如何在 flink sql 中将 hop_end 转换为 bigint?
- javascript - 如何在 asp.net webforms 项目中添加仪表板?