Não entendi o uso do index :(
index = 0
for letra in palavra_secreta:
if (chute.upper() == letra.upper()):
print("Encontrei a letra {} na posição {}".format(letra, index))
index = index + 1
Não entendi o uso do index :(
index = 0
for letra in palavra_secreta:
if (chute.upper() == letra.upper()):
print("Encontrei a letra {} na posição {}".format(letra, index))
index = index + 1
Oi, Mariella! Então, o index é a variável que guarda a posição da letra atual na palavra_secreta. Repare que usamos ela no print, apenas para indicar a posição. Uma alternativa, considerada boa prática, é usar a função enumerate(), que faz a iteração pelo index junto com a letra:
for index, letra in enumerate(palavra_secreta):
if chute.upper() == letra.upper():
print("Encontrei a letra {} na posição {}".format(letra, index))
Por quê começamos o código com index = 0 e, ai final, abaixo do print() colocamos index = index + 1. Essa parte ficou bastante confusa pra mim.
Já no exemplo que você apresentou, o enumerate() significa que eu vou buscar a posição (index) e a letra dentro da palavra_secreta?
Agora confundi tudo!
Opa, Mariella, desculpa por confundir mais, hehe :v!
No código que você mandou, começamos definindo a variável index com o valor 0. Logo em seguida, começamos o loop for, que está iterando sobre a palavra_secreta (ou seja, o código dentro desse bloco do loop vai rodar para cada letra da variável palavra_secreta).
Se a letra da vez for a mesma que a letra chutada pelo usuário (chute), o código imprime uma mensagem indicando que encontrou a letra e a posição em que ela foi encontrada. Essa posição está sendo controlada pela variável index, na qual definimos o valor 0 antes do loop. Em cada loop, além de fazermos essa verificação e (caso True) impressão, adicionamos 1 ao index com o index = index + 1, indicando que estamos passando da letra do índice 0 para a letra do índice 1, e assim por diante. Nesse caso, sem o index a gente não teria como saber que posição está a letra que encontramos.
O enumerate(), que eu propus, consegue juntar as duas variáveis letra e index em uma mesma função. Então iteramos sobre o índice e a letra ao mesmo tempo! Olha um exemplo:
palavra_secreta = 'casa'
for index, letra in palavra_secreta:
print(index, letra)
E o resultado:
0 c
1 a
2 s
3 a
Acho que entendi \o/ ... rs Obrigada, Yan.
Vou praticar e qualquer dúvida retorno ao forum :)