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