Слишком многа букав больше 3 букав не понимать. А если серьезно, то на фоне названий переменных не видно операций над ними, вам может и понятно, но для другого он трудно читаемый. И изучайте библиотеки, изобретать велосипед не лучшее решение
А если пользователь ввел букву, которую уже ранее вводил, что делать при этом?А если там несколько одинаковых букв, например в java? У тебя он только одну внесет. И то программа внесла первую 'a', но вывела текст, что нашел следующую, т.е. 4-ую по счету.
Не проще проверять наличие буквы таким способом, что за сложности учудил: if letter_user in word_secret:
for i in range(len(word_secret)):
if letter_user = word_secret:
letter = letter_user Итого пока: from random import randint
words = ["python", "java", "javascript", "rust"] # Список слов
word_secret = words[randint(0, 3)] # Случайное слово
attempts = 5 # Попытки
letters = ["_" for _ in range(len(word_secret))] # зашифрованное слово
# Цикл будет работать пока пользователь не введёт все буквы слова
while "".join(letters) != word_secret:
letter_user = input("\nВведите букву: ")
if letter_user in word_secret: # Есть ли в слове буква пользователя
for i in range(len(word_secret)):
if letter_user == word_secret:
letters = letter_user
else: # Если в слове нет буквы пользователя
attempts -= 1
print(f"\nУ вас осталось {attempts} попыток!")
if attempts == 0: # Проверка на 0 попыток
print("~У вас закончились попытки!~")
print("~Вы проиграли!~")
break
print(f'\nЗагаданное слово было - "{word}"!') # Выводим загаданное слово