Queria saber como que é possível usar "letra" normalmente sem defini-la antes. É como se o Python entendesse essa palavra em Português.
Queria saber como que é possível usar "letra" normalmente sem defini-la antes. É como se o Python entendesse essa palavra em Português.
victor, é pq existem palavras exclusivas e palavras não excusivas , mostra ai em que momento do código ela foi usada pra tentar te dizer oq que aconteceu.
A palavra "letra" é um variável e ño python não é necessário definir ou declarar as variáveis previamente, como em Java, por exemplo. Essa variável só é válida dentro do contexto do laço FOR para a iteração, ou seja, a cada vez que o laço for executado, LETRA vai receber uma das letras da palavra PALAVRA_SECRETA. No exemplo da aula
palavra_secreta = "banana".upper()
letras_acertadas = ["_" for letra in palavra_secreta]
Cada iteração do for vai gerar um _
que será atribuído automaticamente à lista LETRAS_ACERTADAS.
Faça um teste com esse exemplo aí em baixo. Você verá que cada letra da palavra "banana" será armazenada separadamente na lista como maiúscula.
palavra_secreta = "banana"
letras_acertadas = [letra.upper() for letra in palavra_secreta]
print(letras_acertadas)
Exatamente, o Python não entende a palavra "letra" em si, ele simplesmente entende que estamos chamando de "letra" os elementos que compõe a lista "palavra_secreta". Eu tinha ficado com a mesma dúvida e resolvi trocar para "coco", e funcionou da mesma forma. Foi aí que entendi a mecânica por trás da coisa. Para quem está ingressando nesse mundo, como eu, é realmente complicado entender coisas simples como essa.