我正在创建一个脚本,用于根据用户输入直径计算圆的面积。输入值应在定义的范围内。
是否可以简化我的脚本以避免使用多个while
循环,但仍然提示用户输入,直到在可接受范围内给出一个输入,同时具有自定义输出"错误"根据输入是负还是大?可能使用while diameter:
?
这个问题与链接副本不同,因为我希望用户可以重新输入可接受的输入,而不是在单个错误后停止。
from math import pi
dlist = (range(1,1000))
diameter = int(input("Please enter a diameter between 0 and 1000: "))
while diameter <= 0:
print ("Diameter must be positive")
diameter = (int(input("Please enter a new diameter: ")))
while diameter not in dlist:
print ("Diameter must be less than 1000")
diameter = int(input("Please enter a new diameter: "))
else:
area = (pi*(diameter*0.5)**2)
print ("diameter:", diameter,"area:",area)