2 回答
TA贡献1836条经验 获得超13个赞
如果您打印出导致此错误发生的part和的值,则问题很明显whole。
解决方案是像这样处理任何除零错误
try:
result = percentage(sum(list), total)
except ZeroDivisionError:
# Handle the error in whatever way makes sense for your application
或者,您可以在除法之前检查零
def percentage(part,whole):
if whole == 0:
if part == 0:
return float("nan")
return float("inf")
return float(part) / float(whole) *100
TA贡献1789条经验 获得超8个赞
使用尝试/异常:
if len(list) > 1 and len(list2) > 1:
total = sum(list) + sum(list2)
result = percentage(sum(list), total)
def percentage(part,whole):
while True:
try:
return float(part) / float(whole) * 100
except ValueError as e:
print(e)
这不会因为错误而退出程序,它只会打印错误。
添加回答
举报