PythonZeroDivisionError:浮点除以零-如何将其视为异常
我需要计算中奖率的百分比,但我遇到了ZeroDivision错误的问题:当分母为零时,浮点除以零。我想把它当作一个例外,打印零,然后转到下一个数组。任何协助都将不胜感激PythonZeroDivisionError:浮点除以零-如何将其视为异常,python,Python,我需要计算中奖率的百分比,但我遇到了ZeroDivision错误的问题:当分母为零时,浮点除以零。我想把它当作一个例外,打印零,然后转到下一个数组。任何协助都将不胜感激 YearWinLose1 = '0' YearWinLoseTotalHard2 = '0' YearWinLoseTotalHard2 = float(YearWinLose1) + float(YearWinLose1) YearWinLosePercent3 = float(YearWinLose1)/float(Yea
YearWinLose1 = '0'
YearWinLoseTotalHard2 = '0'
YearWinLoseTotalHard2 = float(YearWinLose1) + float(YearWinLose1)
YearWinLosePercent3 = float(YearWinLose1)/float(YearWinLoseTotalHard2)*100
if YearWinLoseTotalHard2 == 0:
YearWinLosePercent3 == 0
print YearWinLosePercent3
else:
print YearWinLosePercent3
您可以使用try/except:
try:
YearWinLosePercent3 = float(YearWinLose1)/float(YearWinLoseTotalHard2)*100
except ZeroDivisionError:
print '0' #or whatever
编辑1:
为了纠正你写的东西,让我发表几点评论。
通过这一行:
if YearWinLoseTotalHard2 == 0:
上一行中已发生错误。如果要使用If结构作为控制方法,则应在If块内添加分割:
if YearWinLoseTotalHard2 != 0:
YearWinLosePercent3 = float(YearWinLose1)/float(YearWinLoseTotalHard2)*100
else:
print '0'
还有,你写了
YearWinLosePercent3 == 0
如果试图为变量赋值,则应该知道运算符是“=”而不是“=”。后者是用来比较价值的。为什么这有两个赞成票?如果回答了你的问题,请考虑把它标记为正确的。