Newer
Older
bth_py_exercises / 1.03 / guess_the_number.py
"""
Exercise 1.3 - Guess the Number
"""


#  Copyright (c) 2021. Pascal Syma. All rights reserved.
import random
import sys


def guess_the_number():
    """
    Guess a number between 1 and 100. Interactive.
    """
    rand = random.randrange(100) + 1
    player = rand + 1
    guesses = 0
    while True:
        try:
            player = int(input('Guess a number: '))
            if player < 1 or player > 100:
                raise ValueError
        except ValueError:
            print('Wrong input! Please enter a number between 1 and 100')
            continue

        guesses += 1
        if rand == player:
            break
        print(f'You are too {"low" if player < rand else "high"}, try again!')
    print(f'Correct guess! It took you {guesses} guesses!')


if __name__ == '__main__':
    while True:
        guess_the_number()
        if input('Would you like to play again?\n\n Y(es) / N(o) ').lower() != 'y':
            sys.exit(0)