Segue resultado referente ao exercício:
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Segue resultado referente ao exercício:
Olá, Vanessa. Como vai?
Parabéns por concluir mais um exercício prático com sucesso! O seu código para contar caracteres ficou excelente, limpo e super direto ao ponto.
A saída impressa no console mostra que tudo funcionou perfeitamente: o input recebeu a palavra "tecnologia" e a função calculou com precisão os 10 caracteres utilizando o método len().
Para agregar valor ao seu post no fórum e ajudar os colegas que estão iniciando a entender o que acontece por trás dos panos na memória do Python, vale destacar a anatomia da função que você construiu.
Uma das maiores dúvidas de quem começa a estudar funções é entender como as variáveis mudam de nome ao longo do script. O seu código ilustra perfeitamente esse conceito de "passagem de bastão":
palavra_digitada): É a variável real que existe no escopo global do seu programa, responsável por capturar o texto que o usuário digitou no input.palavra): É o nome genérico, uma espécie de "vaga reservada" ou apelido que você definiu na assinatura da função (def contar_caracteres(palavra):).Quando você executa a linha contar_caracteres(palavra_digitada), o Python faz uma cópia do valor contido em palavra_digitada (no caso, "tecnologia") e injeta dentro do parâmetro palavra. A partir desse momento, a função trabalha apenas com esse apelido local na memória.
returnO seu código cumpre perfeitamente o papel proposto pelo desafio. Pensando em uma evolução na arquitetura de sistemas mais robustos (o que conversa diretamente com a sua visão de Processos Sênior), uma boa prática em funções é fazer com que elas retornem o valor calculado com return em vez de imprimirem o resultado direto com o print.
Por que isso é recomendado? Porque se amanhã você precisar salvar essa contagem em um banco de dados, ou se quiser somar a quantidade de letras de duas palavras diferentes, o print bloqueia o dado no console.
Veja como a estrutura ganha mais flexibilidade com o return:
def contar_caracteres(palavra):
# Em vez de printar, a função apenas calcula e devolve o resultado
return len(palavra)
# Interface com o usuário
palavra_digitada = input('Digite uma palavra: ')
# Guardamos o retorno da função em uma variável
num_caracteres = contar_caracteres(palavra_digitada)
# Agora o print fica na camada externa do código
print(f'A palavra "{palavra_digitada}" tem {num_caracteres} caracteres.')
Mais uma entrega de altíssimo nível, com indentação perfeita e uso correto das f-strings para formatação de texto. Parabéns pelo engajamento constante e pelas ótimas contribuições na comunidade!
Espero que possa ter lhe ajudado!
Excelente feedback Evandro!
Muito obrigada!