import random class GuessNumber(): def __init__(self, number, mn=0, mx=100): self.guesses = 0 self.number = number self.min = mn self.max = mx def get_guess(self): guess = input(f'Guess a number ([{self.min}, {self.max}]): ') if self.is_valid_guess(guess): return int(guess) else: print('Please enter a valid number!') return self.get_guess() def is_valid_guess(self, guess): try: guess = int(guess) except: return False return self.min <= guess <= self.max def play(self): while True: self.guesses += 1 guess = self.get_guess() if guess < self.number: print('Your guess was under.') elif guess > self.number: print('Your guess was over.') else: # They guessed it break print(f'You guessed it in {self.guesses} tries!')