我必须在这里划分一些值,但是由于它是零,所以会给出“ ZeroDivisionError”。因此,我编写了以下代码。
if list_actual_revenue[x] != 0.00 or list_actual_revenue[x] != 0:
print('********************')
print(list_actual_revenue[x])
print('********************')
value_rev = float(list_forecast_revenue[x]) - float(list_actual_revenue[x])
value_rev = value_rev / float(list_actual_revenue[x])
我得到的错误是
value_rev = value_rev / float(list_actual_revenue[x])
ZeroDivisionError: float division by zero
所以我决定打印出值并查看发生了什么
********************
3120.00
********************
********************
3055.00
********************
********************
11625.00
********************
********************
11937.50
********************
********************
3000.00
********************
********************
3000.00
********************
********************
3000.00
********************
********************
3000.00
********************
********************
3000.00
********************
********************
3000.00
********************
********************
0.00
********************
您可以看到最后一行是“ 0.00”。我的问题是:如果“ if语句”必须排除0.00,为什么会有0.00?
可能是错误的,但是是因为:
list_actual_revenue[x] != 0.00 or list_actual_revenue[x] != 0
如果这些匹配项中的<< OR语句将返回true。这意味着您实际上总是在敲击if语句。尝试AND?