1
resposta

Duvida Ex 5 de dicionários

Boa tarde Amigos.

Eu não entendi muito esse código:

frase = "Python se tornou uma das linguagens de programação mais populares do mundo nos últimos anos."
contagem_palavra = {}
palavras = frase.split()

for palavra in palavras:
    contagem_palavra[palavra] = contagem_palavra.get(palavra, 0) + 1
print(contagem_palavra)

Copiei para entender, mas senti dúvidas na lógica principalmente na parte dentro do for Se alguém puder me ajudar explicando fico agradecido.

1 resposta

Oi Lucas, como vai?

Vou tentar esmiuçar a lógica por trás dessa iteração. Vamos lá?

Começando, temos a variável frase que abriga uma string com várias palavras. A variável contagem_palavra é um dicionário vazio que será utilizado mais a frente e palavras é uma lista das palavras que estão na frase. O método split() separa a string em substrings usando espaços como delimitadores.

frase = "Python se tornou uma das linguagens de programação mais populares do mundo nos últimos anos."
contagem_palavra = {}
palavras = frase.split()

Partindo para a iteração dentro da lista de palavras que foi definida anteriormente: vamos definir cada item do dicionário ( contagem_palavra[palavra]) utilizando o método get para verificar se cada palavra da lista palavras já está no dicionário. Se a palavra não estiver ainda, ela será definida como chave e receberá o valor inicial 0.

O +1 é o que incrementa a contagem da palavra em 1, ou seja, adiciona mais 1 ao valor daquela chave do dicionário. Se a palavra se repetir duas vezes, no dicionário final teremos o número 2, e assim por diante.

for palavra in palavras:
    contagem_palavra[palavra] = contagem_palavra.get(palavra, 0) + 1

Revisando a iteração na lista de palavras:

  • Para cada palavra da lista palavras:
    • Verificamos se a palavra já está no dicionário contagem_palavra:
      • Se a palavra já existe:
        • Utilizamos o método get para acessar a contagem atual da palavra.
        • Acrescentamos 1 à contagem atual da palavra.
      • Se a palavra não existe:
        • Criamos uma nova chave no dicionário com a palavra como chave e o valor 1.
    • Isso significa que a cada vez que encontramos uma palavra, contamos quantas vezes ela aparece na frase.

Espero ter ajudado a compreender a lógica, Lucas!

Se tiver mais alguma dúvida a respeito dessa questão, estou por aqui.

Abraços.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!