在没有多个while循环的情况下反复提示可接受的输入

时间:2016-11-02 20:42:27

标签: python python-3.x input while-loop

我正在创建一个脚本,用于根据用户输入直径计算圆的面积。输入值应在定义的范围内。

是否可以简化我的脚本以避免使用多个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)

0 个答案:

没有答案