如何在python中定义输入限制

时间:2018-09-03 16:08:26

标签: python python-3.x input limit

我正在尝试为python中的输入定义限制:

hp_cur=int(input("Enter the current number of HP (1-75): "))
hp_max= int(input("Enter the maximum number of HP (1-75): "))
hp_dif=(hp_max-hp_cur)

我想将hp-cur输入限制为1-75,并同时限制hp-max输入,并确保输入大于hp-cur输入。

2 个答案:

答案 0 :(得分:0)

您可以检查输入,如果不在限制范围内,则可以要求用户再次输入。

您可以通过while循环来实现这一点。

while True:    
    try:
        hp_cur=int(input("Enter the current number of HP (1-75): "))
    except ValueError: # used to check whether the input is an int
        print("please insert a int type number!")
    else: # is accessed if the input is a int
        if hp_cur < 1 or hp_cur > 75:
            print("please insert a number in the given limit")
        else: # if number is in limit, break the loop
            break     

您可以对第二个所需的输入执行相同的操作,然后进行比较。如果它是负数,则可以通过将两个“有效性检查”都放在一个较大的while循环中来要求用户再次输入数字,当返回的数字为正数时,您可以break进行循环。< / p>

答案 1 :(得分:0)

while True:
    answer = input('Enter the current number of HP (1-75): ')

    try:
        # try to convert the answer to an integer
        hp_cur = int(answer)

    except ValueError:
        # if the input was not a number, print an error message and loop again
        print ('Please enter a number.')
        continue

    # if the number is in the correct range, stop looping
    if 1 <= hp_cur <= 75:
        break

    # otherwise print an error message, and we will loop around again
    print ('Please enter a number in the range 1 to 75.')