


Вопрос к настоящим программмистам со свободными 3-мя минутами python
Я написал свою игру виселица, проигнорировав пример из книги, потому-что был каким-то непонятным
Слишком много элементов.
Я правильно написал код? Он работает в целом.
Укажите на мои ошибки
import random
words = ("ссылка", "кирка", "араб")
word = random.choice(words)
etaps =("Попытки - 3", "Попытки - 2", "Попытка - 1", "Попытка - 0. это конец.")
popitka = -1
slovo = ["-"] * len(word)
i = 1
end = 0
while i == 1:
----if end == 1:
--------print("Вы проиграли")
--------print("Угадываемое слово -", word)
--------break
----print("В слове", len(word), "Букв")
----typeoro = input("Ваше предположение - ")
----if typeoro in slovo:
--------print("Эта буква уже угадана вами.")
--------continue
----if typeoro.lower() in word:
--------print("Вы угадали.")
--------index = -1
--------for lal in word:
--------index = index + 1
--------if lal == typeoro:
------------slovo [index] = typeoro
------------print("Угадымаемое слово смотрится вот так", slovo)
------------t = 0
------------i = 1
------------break
--------if t == 1:
------------break
--------print("Хотите взять подсказку? - ")
----else:
--------print("Не правильная буква.")
--------popitka = popitka + 1
--------if popitka == 0:
------------print(etaps[0])
--------if popitka == 1:
------------print(etaps[1])
--------if popitka == 2:
------------print(etaps[2])
--------if popitka == 3:
------------print(etaps[3])
------------end = 1
Думаю проблема в том, что использовать слова, в которым встречается одна и та же буква, попросту бессмысленно
--------if popitka == 0:
------------print(etaps[0])
--------if popitka == 1:
------------print(etaps[1])
--------if popitka == 2:
------------print(etaps[2])
Эти 3 условия можно объединить в одно. Это к слову об оптимизации