def contaCaracteres(palavra):
return len(palavra)
palavra = input("Digite uma palavra: ")
caracteres = contaCaracteres(palavra)
print(f"Essa palavra tem {caracteres} caracteres.")
def contaCaracteres(palavra):
return len(palavra)
palavra = input("Digite uma palavra: ")
caracteres = contaCaracteres(palavra)
print(f"Essa palavra tem {caracteres} caracteres.")
Olá, Marcelo. Como vai?
O seu código ficou excelente! A função foi criada de forma muito limpa e objetiva, e o uso da função nativa len() é exatamente a melhor escolha no Python para contar o comprimento de uma string. O uso da f-string no print também deixou a exibição do resultado bem moderna e legível.
Para agregar ainda mais valor ao seu exercício e expandir o seu treino com funções, podemos pensar em um cenário real. No dia a dia do desenvolvimento, quando criamos um "contador de caracteres" (como os que existem no Twitter/X ou em campos de formulários), muitas vezes precisamos decidir se os espaços em branco devem ser contados ou não.
Se o usuário digitar uma frase como "Olá Mundo", o seu código atual vai retornar 9 caracteres, pois o espaço em branco também é uma string e possui um comprimento para o Python.
Como uma sugestão de melhoria para você continuar praticando, podemos adicionar um parâmetro opcional na sua função que permite escolher se queremos ignorar ou não os espaços em branco. Para isso, podemos usar o método .replace(" ", ""), que substitui os espaços por nada.
Veja como ficaria essa evolução do código:
def contaCaracteres(palavra, ignorar_espacos=False):
# Se o parâmetro for True, removemos os espaços antes de contar
if ignorar_espacos:
palavra = palavra.replace(" ", "")
return len(palavra)
texto_usuario = input("Digite uma palavra ou frase: ")
# Cenário 1: Contando tudo (comportamento padrão)
total_com_espaco = contaCaracteres(texto_usuario)
# Cenário 2: Contando apenas as letras e símbolos (ignorando espaços)
total_sem_espaco = contaCaracteres(texto_usuario, ignorar_espacos=True)
print(f"Total com espaços: {total_com_espaco} caracteres.")
print(f"Total sem espaços: {total_sem_espaco} caracteres.")
Com essa modificação, a sua função se torna ainda mais flexível e robusta para diferentes situações que encontramos no mercado de trabalho.
Parabéns por seguir praticando e compartilhando seus códigos aqui no fórum!
Espero que possa ter lhe ajudado!
Boa ou usar strip() ao invés replace