Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Aula 03 Exercício 07 (letras_acertadas[index])

Não consegui entender a lógico que faz o comando letras_acertadas[index] = letra adicionar a letra no lugar correto.

while (not acertou and not enforcou):

    chute = input("Qual letra? ")
    chute = chute.strip()

    index = 0
    for letra in palavra_secreta:
        if (chute.upper() == letra.upper()):
            letras_acertadas[index] = letra
        index = index + 1

    print("Jogando...")
2 respostas
solução!

Seguindo um exemplo: palavra secreta com uma lista em branco da palavra

palavra_secreta = "thiago"
letras_acertadas = ["_", "_", "_", "_", "_", "_"]

você fará um chute de uma letra qualquer e vai guardar isso na variável chute. vamos dizer que você chutou a

chute = input("Qual letra? ")
 chute = chute.strip()

aí a gente cria uma variável index atribuindo zero, pois é o valor inicial do index de todas as listas

index = 0

o próximo passo é percorrer o for. Aqui a gente vai passar letra por letra dentro da palavra secreta. Nesse exemplo o primeiro momento essa letra terá o valor de t

    for letra in palavra_secreta:

aqui fala se a letra que voce chutou for igual a letra t você entra no if

        if (chute.upper() == letra.upper()):

Nesse caso do primeiro chute a gente não entra no if então o index passa a ser iguail a 1.

    index = index + 1

Agora eu vou pro segundo laço do for, onde vou comparar a com h, do mesmo jeito não entra no if e o index passa a ser 2, o mesmo acontece quando comparo a com i e o index passa a ser 3.

Nesse momento a gente vai comparar a com a e aqui a gente vai entrar no if que diz

 letras_acertadas[index] = letra

letras_acertadas[3] = a Se nesse momento fosse impresso a lista, ela estaria assim

letras_acertadas = ["_", "_", "_", "a", "_", "_"]

depois disso o for continua até terminar a palavra, se ele achar outra letra a, ele consegue saber qual é exatamente o index da lista que a letra está, se não achar, acaba o for e é pedido um novo chute.

Agora acho que entendi.

Obrigado!