我会先修复您的代码…您在将“miles<;0”转换为公里后计算,因此无论用户是否更正miles变量,您都已经有了结果km变量。在miles= eval(input("Enter a value for miles "))
kilometers= miles * 1.6
while miles < 0:
print("Error, you can't enter a negative value for miles")
miles = eval(input("Enter the correct value for miles "))
更改为:
^{pr2}$
您可以在while循环中添加一个计数器来记录迭代,并在循环结束时停止:counter = 0
miles = eval(input("Enter a value for miles "))
while miles < 0:
print("Error, you can't enter a negative value for miles")
miles = eval(input("Enter the correct value for miles "))
counter+=1
if counter > 2:
break
kilometers= miles * 1.6
print(kilometers)
使其仅在计数器不超过以下值时显示公里数变量:counter = 0
miles = eval(input("Enter a value for miles "))
while miles < 0:
print("Error, you can't enter a negative value for miles")
miles = eval(input("Enter the correct value for miles "))
counter+=1
if counter > 2:
break
if counter <= 2:
kilometers= miles * 1.6
print(kilometers)
else:
print("Exceeded error count")