Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Python Basics (2015) Number Game App Number Game Refinement

Hoessein Abd
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Hoessein Abd
Python Web Development Techdegree Graduate 19,107 Points

Game doesn't run! No syntax errors.

Can anyone have a look? I followed Kenneth but whenever i try to run the game i don't get the prompt question but another "treehouse:~/workspace$" line.

here's my code:

import random 

def game():
    #generate a random number between 1 - 10 
    secret_num = random.randint(1, 10)
    guesses = 0

    while guesses < 10:
        try:
            #get a number guess from the player
            guess = int(input("Guess a number between 1 and 10: "))
        except ValueError:
            print("{} isn't ta number:".format(guess))
        else:      
            #compare guess to secret number
            if guess == secret_num:
                print("You got it:  the correct number was {}".format(secret_num))
                break
            elif guess < secret_num:
                  print("My number is higher than{}".format(guess))
            else: 
                print("My number is lower than{}".format(guess))
            guesses += 1
    else:             
        print("You didn't get it! My number was{}".format(secret_num)) 

    play_again = input("Do you want to play again? Y/n ")
    if play_again.lower() != 'n':   
        game()
    else:
        print("Thanks for playing, have a good day!")

2 Answers

Stuart Wright
Stuart Wright
41,120 Points

Yup, that code should work. You just need to call it:

game()
Stuart Wright
Stuart Wright
41,120 Points

It's difficult to tell because the first couple of lines of your code aren't formatted correctly, but it looks like your indentation might be off. Your second to last 'else:' statement does not line up with any 'if' statement, which looks like an error.

Edit to add: Just in case I'm wrong and your code is correct but just the formatting in the post messed up, I should also add that you need to call your function in order for the game to run. After your function definition, you need to call it using game(). Otherwise you've just defined a function but not told Python to execute the code inside it.