How to fix ZeroDivisionError: Division by zero?
How to fix ZeroDivisionError: Division by zero?
在 运行 代码之后我收到了 ZeroDivisionError!有人可以解释发生了什么吗?寻找 bscore 和 gscore 输入的平均值
bscore = 0
gscore = 0
bcount = 0
gcount = 0
choice = input("Boy (b), Girl (g) or Quit (q): ")
while (choice != 'q'):
if(choice == 'b'):
score = int(input("Boy score: "))
bscore += score
bcount == 1
#z = (x / y) if y != 0 else 0
elif(choice =='g'):
score = int(input("Girl score: "))
gscore += score
gcount += 1
else:
print("Invalid!")
choice = input("Boy (b), Girl (g) or Quit (q): ")
print("Boy average is: ", (bscore/bcount))
print("Girl average is: ", (gscore/gcount))
您需要更换
bcount == 1
和 bcount += 1
。 bcount == 1
是一个布尔语句,在这里不做任何事情。看起来你想在那个时候增加计数。
此外,即使在那之后,也可能存在 ZeroDivisionError
,因为输入可能永远不会是 b
或 g
。我建议在打印时尝试除法之前有一个 if 条件。
在 运行 代码之后我收到了 ZeroDivisionError!有人可以解释发生了什么吗?寻找 bscore 和 gscore 输入的平均值
bscore = 0
gscore = 0
bcount = 0
gcount = 0
choice = input("Boy (b), Girl (g) or Quit (q): ")
while (choice != 'q'):
if(choice == 'b'):
score = int(input("Boy score: "))
bscore += score
bcount == 1
#z = (x / y) if y != 0 else 0
elif(choice =='g'):
score = int(input("Girl score: "))
gscore += score
gcount += 1
else:
print("Invalid!")
choice = input("Boy (b), Girl (g) or Quit (q): ")
print("Boy average is: ", (bscore/bcount))
print("Girl average is: ", (gscore/gcount))
您需要更换
bcount == 1
和 bcount += 1
。 bcount == 1
是一个布尔语句,在这里不做任何事情。看起来你想在那个时候增加计数。
此外,即使在那之后,也可能存在 ZeroDivisionError
,因为输入可能永远不会是 b
或 g
。我建议在打印时尝试除法之前有一个 if 条件。