Python: contar consonantes de cadena

En este ejercicio básico de programación en Python vamos a ver cómo obtener la cantidad de consonantes que contiene una cadena, es decir, aquellas letras que son parte del alfabeto pero que tampoco son vocales.

Para ello vamos a usar if, for y algunas funciones de Python 3.

Explicación del algoritmo

Para contar las consonantes de una string, primero convertimos la cadena a minúscula y así minimizamos las comparaciones. Después, recorremos la cadena carácter por carácter y en cada paso aumentamos el contador si:

  • El carácter es una letra (no un espacio, signo o número)
  • El carácter no es vocal

En dado caso de que ambas condiciones se cumplan, aumentamos el contador. Al final imprimimos el contador.

Contar consonantes en cadena

Es momento de ver el código de Python. Primero veamos la función para saber si un carácter es vocal:

def es_vocal(letra):
    return letra in "aeiou

Después de eso vamos a recorrer la cadena e ir aumentando el contador para al final imprimir la cantidad de consonantes.

cadena = "Hola mundo. Hoy vamos a ver otro ejercicio usando Python"
# Comenzamos convirtiendo a minúsculas, así nos ahorramos comparaciones
cadena_minuscula = cadena.lower()
cantidad_consonantes = 0
for letra in cadena_minuscula:
    if letra.isalpha() and not es_vocal(letra):
        cantidad_consonantes += 1
print(f"En la cadena '{cadena}' hay {cantidad_consonantes} consonantes"

La comparación se hace en la línea 6, en donde comprobamos si el carácter es una letra con isalpha, y luego comprobamos que no sea una vocal.

Poniendo todo junto

Finalmente el código completo queda como se ve a continuación:

"""
	https://parzibyte.me/blog
"""


def es_vocal(letra):
    return letra in "aeiou"


cadena = "Hola mundo. Hoy vamos a ver otro ejercicio usando Python"
# Comenzamos convirtiendo a minúsculas, así nos ahorramos comparaciones
cadena_minuscula = cadena.lower()
cantidad_consonantes = 0
for letra in cadena_minuscula:
    if letra.isalpha() and not es_vocal(letra):
        cantidad_consonantes += 1
print(f"En la cadena '{cadena}' hay {cantidad_consonantes} consonantes")

Aquí te dejo más tutoriales de programación en Python.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

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.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *