Как определить ограничения для моих входов в Python - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь определить пределы для моих входов в 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 голосов
/ 03 сентября 2018
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.')
0 голосов
/ 03 сентября 2018

вы можете проверить ввод, и если он не выходит за пределы, вы можете попросить пользователя ввести снова.

Вы бы поняли это с помощью петли 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, когда возвращаемое число положительное.

...