Adicionei a função enumerate para poder já possuir o index sem ter grandes problemas e deixar o código menor e mais legível
def jogar():
print("*********************************")
print("Bem vindo ao jogo de forca!")
print("*********************************")
palavra_secreta = "abacaxi"
letras_acertadas = ["_" for _ in palavra_secreta]
letras_chutadas = []
tentativas = 6
erros = 0
enforcou = False
acertou = False
# enquanto não enforcou e não acertou
while not enforcou and not acertou:
chute = input("Qual letra? ")
chute = chute.strip().lower()
chute_certo = False
if (len(chute) != 1) or (not chute.isalpha()):
print("Chute inválido, apenas letras")
continue
elif chute in letras_chutadas:
print("Você já testou essa letra!")
continue
else:
letras_chutadas.append(chute)
for i, letra in enumerate(palavra_secreta):
if chute == letra:
letras_acertadas[i] = letra
chute_certo = True
if not chute_certo:
erros += 1
print(*letras_acertadas)
print(f"Faltam {tentativas - erros} tentativas!")
acertou = "_" not in letras_acertadas
enforcou = erros == tentativas
if enforcou:
print(f"Fim do jogo. A palavra era {palavra_secreta}.")
elif acertou:
print(f"Parabens por adivinhar a palavra {palavra_secreta}!")
if __name__ == '__main__':
jogar()