Hello,

Background.  My 11 y/o son and I have taken on the task to learn python and 
work our way through the http://inventwithpython.com/chapters/ book.
-  We are currently on Chapter 9 and trying to modify the hangman program.

- the first challenge was to modify the word list into a dictionary.  So we 
changed our words variable into a dictionary
--  I believe we did this correctly.

-  But we somehow broke the game.  All of the words are only two letters and 
the program crashes on exit with the following error.

 Traceback (most recent call last):
  File "/media/.../Python/hangman.py", line 155, in <module>
    print('You have run out of guesses! \n After ' + str(len(missedLetters)) + 
' missed guesses and ' + str(len(correctLetters)) + ' correct guesses, the word 
was "' + secretWord + '"')
TypeError: Can't convert 'list' object to str implicitly

-I can't see why this wouldn't work.  By definition isn't this the cast:

1)  len(correctLetters) //returns the lengths of the variable as an int
2)  str(len(correctLetters)) // converts the integer into a string.

Applicable code is here:
 # Check if player has guessed too many times and lost
        if len(missedLetters) == len(HANGMANPICS) - 1:
            displayBoard(HANGMANPICS, missedLetters, correctLetters, secretWord)
            print('You have run out of guesses! \n After ' + 
str(len(missedLetters)) + ' missed guesses and ' + str(len(correctLetters)) + ' 
correct guesses, the word was "' + secretWord + '"')
            gameIsDone = True

Any help to get us past this error message is most appreciated.

Thanks in advance,
Dave
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to