python

Python: conteo y porcentaje de letras en cadena

Hoy vamos a ver un ejercicio de programación en Python sobre conteo de letras en una cadena.

Lo que tenemos que hacer es contar cuántas veces aparece una letra en una cadena y luego mostrar la letra, un asterisco por cada ocurrencia y el porcentaje que ocupa esa letra dentro de la cadena.

Por poner un ejemplo, al invocar a la función como se ve a continuación:

See the gist on github.

La salida sería la siguiente:

See the gist on github.

Si te fijas, también cuenta cuántas veces aparece el carácter del espacio, dos puntos, barra, etcétera. Muestra el conteo de las letras junto con su porcentaje y una cantidad de asteriscos.

Explicación del algoritmo

Contando letras

Para contar el porcentaje de aparición de letras en una cadena con Python vamos a usar un diccionario, usando la letra como clave. Entonces la clave será la letra, y el valor será otro diccionario que tendrá el conteo.

Recorremos la cadena o frase letra por letra. En cada iteración comprobamos si el carácter existe en el diccionario; en caso de que no entonces lo agregamos con un conteo de 0 por defecto.

Después de hacer la comparación anterior aumentamos el conteo del diccionario en esa clave. Básicamente si la letra no existe la agregamos, y si existe le aumentamos el conteo.

Calculando porcentaje

Hasta ahora ya tenemos el diccionario con cada letra y la cantidad de veces que aparece. Lo que haremos a continuación será recorrer el diccionario y calcular el porcentaje.

La fórmula es:

Porcentaje = (cantidad de veces que aparece la letra * 100) / cantidad total de letras

Finalmente el diccionario tendrá como clave la letra, y como valor el conteo y porcentaje. Ya solo falta imprimir.

Porcentaje de ocurrencia de letras en frase con Python

Es momento de pasar al código. Es importante mencionar que la función puede ser modificada a tu gusto, y que por ejemplo podrías hacer que solo devuelva el diccionario para que lo imprimas en otro lugar.

Comenzamos contando las letras:

See the gist on github.

Después recorremos el diccionario y vamos calculando el porcentaje que representa la letra:

See the gist on github.

Finalmente volvemos a iterar el diccionario e imprimimos lo que el ejercicio requiere. Por cierto, para imprimir los asteriscos simplemente hacemos un ciclo for e imprimimos un asterisco indicando el end en "" para que no imprima salto de línea.

See the gist on github.

Nota: estoy usando round para redondear el porcentaje. Puedes modificarlo si quieres mostrarlo completo o con más decimales.

Poniendo todo junto

Cantidad de veces que aparece letra con porcentaje en Python – Programación

La función y su modo de uso queda así:

See the gist on github.

De este modo podemos contar la cantidad de veces que aparece una letra en una oración, indicar ese conteo con asteriscos y también mostrar el porcentaje.

Si quieres aprender Python te recomiendo leer otras entradas de este lenguaje en mi blog.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Enviar mensaje con bot de Telegram usando JavaScript (lado del cliente)

Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…

10 horas hace

PHP: incrustar imagen en base64

El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…

11 horas hace

Plugin ESC POS – Actualización 3.4.0: imprimir HTML

El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…

2 días hace

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

1 semana hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

1 semana hace

Imprimir PDF generado con HTML

Hoy vamos a ver programar la impresión de un PDF generado a partir de HTML…

1 semana hace

Esta web usa cookies.