-
Notifications
You must be signed in to change notification settings - Fork 0
/
Виселица.py
67 lines (61 loc) · 3.55 KB
/
Виселица.py
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
# Импортируем модули
import random
import os
# Определяем функцию
def play_game() -> None:
"""
Игра "Угадай слово" или "Виселица".
"""
# Очищаем экран
os.system("cls")
# Приветствие
print("Привет! Я загадал слово, и тебе надо его угадать.")
print("Не забудь, что у тебя всего 10 попыток! Удачи в игре!")
# Выбираем случайное слово для игры из списка
words = ['задача', 'высокопревосходительство', 'виселица', 'амарант', 'факториал', 'калькулятор', 'облако', 'астрономия', 'дезоксирибонуклеиновая кислота', 'время', 'буква', 'карта', 'ананас', 'метилпропенилендигидроксициннаменилакрилическая кислота']
word = random.choice(words)
if word == "метилпропенилендигидроксициннаменилакрилическая кислота":
print("Тебе повезло!! У тебя супер-слово. Оно крайне сложное. Его сможет отгадать только настоящий знаток Ералаша или Трифон. Ответ здесь: https://youtu.be/fxyomfpvDqE?si=pln4DN3GMcsLz8rW&t=171")
# Список названных букв
letters = []
# Кол - во жизней (попыток)
hp = 10
# Начинаем игровой цикл
while hp > 0:
# Создаем флажок выигрыша
is_win = True
# Выведем слово по буквам
# Т. е. перебираем его по буквам
for symb in word:
if symb in letters:
print(symb, end = " ")
else:
is_win = False
print("*", end = " ")
# Проверка на выигрышь
if is_win:
print("\nМолодец! Ты отгадал слово и победил!")
break
# Ход игрока
user_letter = input("\nВведите букву: ")
letters.append(user_letter)
if user_letter not in word:
# Если буквы нет в слове, то жизни отнимаются
hp -= 1
# Проигрыш
if hp == 0:
print("У тебя не осталось попыток. Ты проиграл! Было задумано слово", word,".")
break
# Ошибка
else:
if hp == 1:
print("Неправильно! У тебя осталось", hp, "попытка. Если слово очень длинное, возможно это два слова.")
elif hp == 2 or hp == 3 or hp == 4:
print("Неправильно! У тебя осталось", hp, "попытки. Если слово очень длинное, возможно это два слова.")
else:
print("Неправильно! У тебя осталось", hp, "попыток. Если слово очень длинное, возможно это два слова.")
input("Нажмите Enter.")
# Очистка экрана
os.system("cls")
if __name__ == "__main__":
play_game()