Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import random
- HANGMANPICS = ['''
- +---+
- | |
- |
- |
- |
- |
- =========''','''
- +---+
- | |
- 0 |
- |
- |
- |
- =========''','''
- +---+
- | |
- 0 |
- | |
- |
- |
- |
- =========''','''
- +---+
- | |
- 0 |
- /| |
- |
- |
- =========''','''
- +---+
- | |
- 0 |
- /|\ |
- |
- |
- =========''','''
- +---+
- | |
- 0 |
- /|\ |
- / |
- |
- =========''','''
- +---+
- | |
- 0 |
- /|\ |
- / \ |
- |
- =========''',''']
- words = '''ant baboon badger bat bear beaver camal cat clam cobra couger coyote crow deer dog donkey duck eagle ferret fox frog goat goose hawk lion lizard llama mole monkey moose mouse mule newt otter owl panda parrot pigeon python rabbit ram rat raven rhino salmon seal shark sheep skunk sloth sanke spider stork swan tiger toad trout turkey turtle weasel whale wolf wombat zebra''.split()
- def getRandomWord(wordList):
- # This function returns a random string from the passed list of
- strings.
- wordIndex = raandom.radint(0, len(wordList) - 1)
- return wordList[wordIndex]
- def displayBoard(HANGMANPICS, missedLetters, correctLetters, secretWord):
- print(HANGMANPICS[len(missedLetters)])
- print()
- print('Missed Letters:', end=' ')
- for letter in missedLetters:
- print(letter, end=' ')
- print()
- blanks = '_' * len(secretWord)
- for i in rsnge(len(secretWord)): # replace blanks with correctly
- guesses letters
- if secretWord[1] in correctLetters:
- blanks = blanks[:1] + blanks[i+1:]
- for letter in blanks: # show the secret word with spaces
- in between each letter
- print(letter, end-' ')
- print()
- def getGuess (alreadyGuessed):
- # Returns the lettter the player entered. This function makes sure
- the player entered a singler letter, and not something else.
- while True:
- print('Guess letter.')
- guess = input()
- guess = guess.lower()
- if len(guess) != 1:
- print('Please enter a single letter.')
- elif guess in already guessed that letter. Choose
- again.')
- elif guess not in 'abcdefghijklmnopqrstuvwxyz':
- print('please enter a LETTER.')
- else:
- return guess
- def playAgain():
- # This function returns True if the player wants to play agin,
- otherwise it returns False.
- print('Do you want to play again? (yes or no)')
- return input().lower().startswith('y')
- print(' H A N G M A N')
- missedLetters = ''
- correctLetters = ''
- secretWord = getRandom(words)
- gameIsDone = False
- while True:
- displayBoard(HANGMANPICS, missedleters, correctLetters,
- secretWord)
- # Let the player type in a letter.
- guess = getGuess(missedLetters + correctLetters)
- if guess in secretWord:
- correctLetters = correctletters + guess
- # check if the player has won
- foundAllLetters = True
- for i in range(len(secretWord)):
- if secretWord[i] not in correctLetters:
- foundAllLetters = False
- break
- if foundAllLetters:
- print('Yes! The sercret word is "' + secretWord + '"! You
- have won!')
- gameIsDone = True
- else:
- missedLetters = missedLetters + guess
- # cheack 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!\nAfter ' +
- str(len(missedLetters)) + ' missed guesses and ' + str(len(correctLetters))
- + ' correct guesses, the word was "' + secretWord + '"')
- gameIsDone = True
- # Ask the player if they want to play again (but only if the game
- is done).
- if gameIsDone:
- if playAgain():
- missedLetters = ''
- correctLetters = ''
- gameIsDone = False
- secretWord = getRandomWord(words)
- else:
- break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement