-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhangman.py
More file actions
88 lines (75 loc) · 1.86 KB
/
Copy pathhangman.py
File metadata and controls
88 lines (75 loc) · 1.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
HANGMAN_PICS = ['''
+---+
|
|
|
===''', '''
+---+
O |
|
|
===''', '''
+---+
O |
| |
|
===''', '''
+---+
O |
/| |
|
===''', '''
+---+
O |
/|\ |
|
===''', '''
+---+
O |
/|\ |
/ |
===''', '''
+---+
O |
/|\ |
/ \ |
===''']
word = 'panda'
tip = 'animal'
def hideWord(good_letters):
hidden_word = ''
for letter in word:
if letter in good_letters:
hidden_word = hidden_word + letter + " "
else:
hidden_word = hidden_word + "_ "
return hidden_word
def main():
good_letters = []
used_letters = []
used_letters_message = "\n\nUsed letters: "
used_lives = 0
hidden_word = hideWord(good_letters)
print(HANGMAN_PICS[used_lives] + "\t" + hidden_word + "(Tip: " + tip + ")" + used_letters_message + "\n")
while(used_lives < (len(HANGMAN_PICS) - 1)):
letter = input("Type a letter: ")
# Does not take one life for repeated letters
if letter in used_letters:
continue
if letter in word:
good_letters.append(letter)
else:
used_lives += 1
used_letters.append(letter)
used_letters_message = used_letters_message + letter + " "
hidden_word = hideWord(good_letters)
print(HANGMAN_PICS[used_lives] + "\t" + hidden_word + "(Tip: " + tip + ")" + used_letters_message + "\n")
hidden_word_to_check = hidden_word.replace(" ", "")
if hidden_word_to_check == word:
break
if used_lives == len(HANGMAN_PICS)-1:
print("You have failed with the hangman")
else:
print("You have saved the man")
if __name__ == "__main__":
main()