Python 2.7 Python被零除法
我试图计算persentage,并显示错误浮点除以零,这是我的代码Python 2.7 Python被零除法,python-2.7,odoo-8,Python 2.7,Odoo 8,我试图计算persentage,并显示错误浮点除以零,这是我的代码 d4 = float(self.qty_normal)+float(self.qty_abnormal) d3 = float(self.qty_normal)+float(self.qty_recoveryabn) if self.flag_recovery == False: if self.qty_abnormal and self.qty_normal: p
d4 = float(self.qty_normal)+float(self.qty_abnormal)
d3 = float(self.qty_normal)+float(self.qty_recoveryabn)
if self.flag_recovery == False:
if self.qty_abnormal and self.qty_normal:
pnormal =(self.qty_normal)/float(d3)*(100.00)
pabnormal =(self.qty_abnormal)/float(d3)*(100.00)
self.nursery_persentagea = pabnormal
self.nursery_persentagen = pnormal
if self.flag_recovery == True:
if self.qty_recoveryabn and self.qty_normal:
pnormal =(self.qty_normal)/float(d3)*(100.00)
pabnormal =(self.qty_recoveryabn)/float(d3)*(100.00)
self.nursery_persentagea = pabnormal
self.nursery_persentagen = pnormal
帮我解决这个问题你有几个分母相同的表达式-
d3
。在赋值后检查其值:
d3 = float(self.qty_normal)+float(self.qty_recoveryabn)
它不应为零,否则此表达式将无法计算:
pnormal =(self.qty_normal)/float(d3)*(100.00)
或
(取决于
flag\u recovery
等)不能将某个值除以零。只需在分割前设置一个检查,查看分数的下半部分是否为0。
pnormal =(self.qty_normal)/float(d3)*(100.00)