Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- """
- Created on Sat Feb 25 20:31:20 2017
- @author: NovaXu
- """
- import random
- import string
- WORDLIST_FILENAME = "words.txt"
- def load_words():
- print("Loading word list from file...")
- # inFile: file
- inFile = open(WORDLIST_FILENAME, 'r')
- # line: string
- line = inFile.readline()
- # wordlist: list of strings
- wordlist = line.split()
- print(" ", len(wordlist), "words loaded.")
- return wordlist
- def choose_word(wordlist):
- return random.choice(wordlist)
- def is_word_guessed(secret_word, letters_guessed):
- if secret_word.find(letters_guessed) == True:
- return True
- else:
- return False
- def get_guessed_word(secret_word, letters_guessed):
- b = "#"*len("secretword")
- if secret_word.find(letters_guessed):
- b.replace('#', 'letters_guessed')
- else:
- pass
- def get_available_letters(letters_guessed):
- alphabet = string.ascii_lowercase
- for i in letters_guessed:
- string.ascii_lowercase.replace(i,'')
- return alphabet
- def hangman(secret_word):
- guesses_remaining = 8
- letters_guessed = []
- warnings_remaining = 3
- vowels = ['a', 'e','i','o', 'u']
- if guesses_remaining == 0:
- print('Sorry, you ran out of guesses. The word was: ', secret_word)
- else:
- print('You have', guesses_remaining, 'guesses left')
- print('Available letters:',get_available_letters(letters_guessed))
- letter = input('Please guess a letter: ', )
- letters_guessed.append(letter)
- if letter in string.ascii_uppercase:
- str.lower(letter)
- elif letter in string.ascii_lowercase:
- if letter in secret_word:
- print('Good guess: ', get_guessed_word(secret_word, letters_guessed))
- if is_word_guessed() == True:
- total_score = guesses_remaining * ((len(letters_guessed)+1)+len(secret_word))
- print('Congratulations, you won!')
- print('Your total score for this game is: ', total_score)
- else:
- if letter in letters_guessed:
- if warnings_remaining != 0:
- warnings_remaining -= 1
- print('You have already guessed this letter: ', letter)
- print('You have' + warnings_remaining + 'warnings')
- else:
- guesses_remaining -= 1
- print('No warnings left. You have lost a guess')
- print('Oops! That letter is not in my word:', get_guessed_word(secret_word, letters_guessed))
- else:
- letters_guessed.append(letter)
- if letter in vowels:
- guesses_remaining -= 2
- else:
- guesses_remaining -= 1
- print("-------")
- else:
- warnings_remaining -= 1
- if warnings_remaining == 0:
- guesses_remaining -= 1
- print('No warnings left. You lost a guess.')
- else:
- print('Oops! That is not a valid letter. You have' + warnings_remaining + 'left:', get_guessed_word(secret_word, letters_guessed))
- secret_word = 'day'
- hangman(secret_word)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement