Search code examples
pythoninputrangevalueerror

how can i limit the user by letting him input a number only if higher than minimum_range?


import random


def input_range():
    minimum_range = 5
    users_range = input("set the maximum value for the range, minimum " + minimum_range + ":")
    if int(users_range) > int(minimum_range):
        print("The maximum range you selected is:", users_range)
    else:
        print("Out of range, try again")

    random_number = random.randint(int(minimum_range), int(users_range))
    print(random_number)


def name_user_request():
    users_name = input("what's yor name? ")
    print("Hi " + users_name + " nice to meet you")


input_range()
name_user_request()

this code i posted gives me an error if i input a number lower than minimum_range (in this case 5) any help would be great. Thanks!


Solution

  • Try a recursion !!

    import random
    
    def input_range():
        minimum_range = 5
        users_range = input("set the maximum value for the range, minimum " + str(minimum_range) + ":")
        if int(users_range) > int(minimum_range):
            print("The maximum range you selected is:", users_range)
            random_number = random.randint(int(minimum_range), int(users_range))
            print(random_number)
            return        
        else:
            print("Out of range, try again")
            input_range()
        return    
    
    
    
    def name_user_request():
        users_name = input("what's yor name? ")
        print("Hi " + users_name + " nice to meet you")
    
    input_range()
    name_user_request()