Além das funções postas nas vídeo-aulas eu queria que, caso o chute fosse repetido, aparecesse uma mensagem dizendo "chute repetido, tente de novo" e não somasse o erro.
import random
def exibe_titulo():
print("*********************************")
print("Bem vindo ao jogo de Forca!")
print("*********************************")
def carrega_palavra_secreta():
arquivo = open('palavras.txt', 'r', encoding='utf-8')
palavras = []
for linha in arquivo:
linha = linha.strip()
palavras.append(linha)
arquivo.close()
numero = random.randrange(0, len(palavras))
palavra_secreta = palavras[numero].upper()
return palavra_secreta
def inicializa_letras_acertadas(palavra):
return ['_' for letra in palavra]
def input_chute():
chute = input('Qual Letra: ')
chute = chute.strip().upper()
return chute
def marca_chute_correto(chute, letras_acertadas, palavra_secreta, todas_letras):
index = 0
for letra in palavra_secreta:
if(chute == letra):
letras_acertadas[index] = letra
index += 1
todas_letras.append(chute)
def jogar():
exibe_titulo()
carrega_palavra_secreta()
palavra_secreta = carrega_palavra_secreta()
letras_acertadas = inicializa_letras_acertadas(palavra_secreta)
enforcou = False
acertou = False
erros = 0
letra_errada = []
todas_letras = []
print('Você será enforcado quando tiver 6 erros')
print(letras_acertadas)
#print(todas_letras)
while(not enforcou and not acertou):
chute = input_chute()
if chute in palavra_secreta:
marca_chute_correto(chute, letras_acertadas, palavra_secreta, todas_letras)
elif chute in todas_letras:
print('Palpite repetido, tente de novo')
else:
erros += 1
letra_errada.append(chute)
todas_letras.append(letra_errada)
print(f'Você errou {erros} vezes\n')
print(f'Letras erradas: {letra_errada}')
enforcou = erros == 6
acertou = '_' not in letras_acertadas
print(letras_acertadas)
if acertou:
print("Parabéns, você ganhou!")
else:
print('Ótima tentativa, mais sorte da próxima vez')
print(f'A palavra é {palavra_secreta}')
print("Fim de Jogo!")
if(__name__ == "__main__"):
jogar()
testei a lista que fiz e os valores estão sendo empurrados para ambas as listas (letra_errada e todas_letras), mas a mensagem do elif não funciona Alguém consegue me ajudar?