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

O que é a estrutura "letra"

Meu programa funcionou perfeitamente, mas não entendi a estrutura "letra" no código. Ela não parece ser uma função bult-in, até por estar em português. Mas ao mesmo tempo não é nenhuma função ou variável que eu tenha declarado.

3 respostas

Olá, Cassiano. Tudo bom? O 'letra' é um iterador, utilizado para iterar na lista 'palavra_secreta', ou seja, ele pode ser visto como uma variável temporária que recebe o valor de cada item da lista sequencialmente. Exemplo :

Se temos uma lista [a, b, c, d], e utilizarmos o for para iterar sobre essa lista, iremos criar uma variável pata percorrer essa lista. For qualquer_coisa in lista: Print(qualquer_coisa)

Você verá que a saída será 4 prints diferentes, um para cada item da lista, utilizando uma única variável (qualquer_coisa)

Espero ter ajudado : )

Oi Rodrigo. Tudo certo, e você? Obrigado pela ajuda.

Pelo que entendi, então em vez de 'letra' poderia ter criado qualquer outra designação para o iterador, correto? E no nosso caso, 'letra' foi designado como iterador no momento do for, correto?

Como diferencio esse iterador de uma variável? Se fosse uma variável teria uma condição? Ex: for letra == a in palavra secreta.

solução!

Uma variável precisa ser declarada, a menos que você esteja apenas checando se um determinado item está em uma lista Toda vez que você tiver um laço for, ele seguirá essa estrutura:

for (iterador) in (iterável): statements

Foto 1

Nessa foto você pode ver duas formas de se iterar em uma lista. Na primeira, eu simplesmente checo se a letra 'a' está na lista. Como ela está na lista, é retornado True.

Na segunda eu utilizo o for para passar por todos os itens da lista, e checando a condição if que eu criei. Como o if checa se a == 'a', ele terá n checagens, sendo n = o número de elementos da lista.

A forma como você escreveu 'for letra == a in palavra secreta' gera um erro de sintaxe, pois você tenta fazer uma validação onde não é suportado (pelo menos ainda, rs)

uma outra forma de você fazer o mesmo que eu fiz acima, seria unindo as duas formas da seguinte maneira:

Foto 2

Como você ainda está bem no começo do curso, eu recomendo que se mantenha no 'programa' proposto e vá acompanhando a documentação ao mesmo tempo, para ver se não tem nenhuma atualização : Link Documentação

Talvez algumas das coisas que eu falei não façam muito sentido agora ou soem complicadas, mas o importante mesmo é você entender que o 'letras' pode ser abstraído para o entendimento de uma variável temporária que só existe durante aquele for, e é utilizado para iterar em alguma outra variável (que seja iterável). No futuro você verá algumas outras possibilidades como o range, por exemplo, que percorre uma sequência de números.

Também é importante saber que as operações são feitas dentro do bloco for, e não na mesma linha de inicialização do for. Foto 3

Espero ter ajudado : )