Boa noite, Alura. Fiz uma pequena mudança para o encerramento do laço de repetição While. Ao invés de adicionar o ''not acertou and not enforcou'', coloquei o While True, com parada ''break'' em ganhou ou perdeu.
Minha dúvida é a seguinte. Fiz uma boa escolha? Há algum erro nessa minha opção? Ela exigirá uma memória maior do arquivo? Segue, abaixo, meu programa. Aguardo retorno, desde já.
def jogar(): print("") print("Bem vindo ao jogo da Forca!") print("")
#Palavra da rodada
palavra_secreta = 'banana'.lower()
letras_acertadas = ['_', '_', '_', '_', '_', '_']
erros = 0
print(letras_acertadas)
#Repetição dos chutes
while True:
chute = str(input(f'Digite uma letra:'))[0].strip().lower()
if (chute in palavra_secreta):
index = 0
for letra in palavra_secreta:
if (chute == letra):
letras_acertadas[index] = letra
index += 1
else:
erros+=1
tentativas = 6 - erros
print(f'Você errou, resta(m) {tentativas} tentativa(s)!')
print(letras_acertadas)
#Contagem de erros e acertos
if (not '_' in letras_acertadas):
print('Parabéns, você ganhou!')
break
elif (erros == 6):
print('Que pena, você perdeu!')
break
print("Fim do jogo")
if (name == 'main'): jogar()