Não sei o que mudou no meu código mas estava fazendo o mesmo que o professor e estava funcionando perfeitamente. Mas quando implementei o novo conteúdo as letras inseridas não ficam na ordem. Por exemplo, quando digito "i" aparece três i's na sequencia. Vou colocar aqui a forma com que o programa se desenvolve.
----------------------------
Bem vinde ao jogo de Forca
----------------------------
sua palavra tem 10 letras, boa sorte
['_', '_', '_', '_', '_', '_', '_', '_', '_', '_']
Digite uma letra i
['I', 'I', 'I', '_', '_', '_', '_', '_', '_', '_']
Digite uma letra O
['O', 'I', 'I', '_', '_', '_', '_', '_', '_', '_']
Digite uma letra B
['B', 'I', 'I', '_', '_', '_', '_', '_', '_', '_']
Aqui está o código:
def jogarForca():
print("----------------------------")
print ("Bem vinde ao jogo de Forca")
print("----------------------------")
palavra_secreta = "Obisidiana".upper()
letra_acertada = ["_", "_", "_", "_", "_", "_", "_", "_", "_", "_"]
enforcou = False
acertou = False
erros = 0
print("sua palavra tem {} letras, boa sorte".format(len(letra_acertada)))
print(letra_acertada)
while(not enforcou and not acertou):
chute = input("Digite uma letra")
chute = chute.strip().upper()
if(chute in palavra_secreta):
index = 0
for letra in palavra_secreta:
if(chute == letra):
letra_acertada[index] = letra
index = index + 1
else:
print ("não tem essa letra na sua palavra")
erros = erros + 1
enforcou = erros == 6
acertou = "_" not in letra_acertada
print(letra_acertada)
if (acertou):
print ("Parabéns, você acertou a palavra")
else:
print ("que pena, você errou")
if(__name__== '__main__'):
jogarForca()
Agradeço desde já, porque realmente não sei o que está acontecendo