3 usuarios conectados

Reemplazar consonantes. Ejercicio en Python

Comparte esto

 

Escribe una función en Python llamada reemplazar_consonantes que tome una cadena de texto y un carácter de reemplazo como entrada. La función debe devolver una nueva cadena donde todas las consonantes (todas las letras del alfabeto que no son a, e, i, o, u, tanto mayúsculas como minúsculas) han sido reemplazadas por el carácter de reemplazo.



Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  Solución al Ejercicio: Reemplazar consonantes

📋 Copiar código


def reemplazar_consonantes(texto, reemplazo):
  """
  Reemplaza todas las consonantes en una cadena de texto con un carácter específico.

  Args:
    texto: La cadena de texto de entrada.
    reemplazo: El carácter con el que se reemplazarán las consonantes.

  Returns:
    Una nueva cadena con todas las consonantes reemplazadas.
  """
  vocales = "aeiouAEIOU"
  nueva_cadena = ""
  for char in texto:
    if char.isalpha() and char not in vocales:
      nueva_cadena += reemplazo
    else:
      nueva_cadena += char
  return nueva_cadena

# Ejemplos de uso
texto1 = "Hola Mundo"
reemplazo1 = "*"
resultado1 = reemplazar_consonantes(texto1, reemplazo1)
print(f"'{texto1}' con consonantes reemplazadas por '{reemplazo1}': '{resultado1}'")

texto2 = "Programacion en Python"
reemplazo2 = "#"
resultado2 = reemplazar_consonantes(texto2, reemplazo2)
print(f"'{texto2}' con consonantes reemplazadas por '{reemplazo2}': '{resultado2}'")

texto3 = "AEIOU aeiou XYZ xyz"
reemplazo3 = "-"
resultado3 = reemplazar_consonantes(texto3, reemplazo3)
print(f"'{texto3}' con consonantes reemplazadas por '{reemplazo3}': '{resultado3}'")

texto4 = "Solo vocales"
reemplazo4 = "+"
resultado4 = reemplazar_consonantes(texto4, reemplazo4)
print(f"'{texto4}' con consonantes reemplazadas por '{reemplazo4}': '{resultado4}'")

texto5 = "123 !?."
reemplazo5 = "@"
resultado5 = reemplazar_consonantes(texto5, reemplazo5)
print(f"'{texto5}' con consonantes reemplazadas por '{reemplazo5}': '{resultado5}'")

texto6 = ""
reemplazo6 = "$"
resultado6 = reemplazar_consonantes(texto6, reemplazo6)
print(f"'{texto6}' con consonantes reemplazadas por '{reemplazo6}': '{resultado6}'")

Explicación del Código:

  1. Función reemplazar_consonantes(texto, reemplazo):
    • Define una cadena vocales que contiene todas las vocales en minúscula y mayúscula.
    • Inicializa una cadena vacía nueva_cadena para construir el resultado.
    • Itera a través de cada carácter char en la cadena de entrada texto.
    • Para cada carácter, verifica dos condiciones:
      • char.isalpha(): Comprueba si el carácter es una letra del alfabeto.
      • char not in vocales: Comprueba si el carácter no está presente en la cadena de vocales.
    • Si ambas condiciones son verdaderas (es una letra y no es una vocal, por lo tanto, es una consonante), se añade el carácter de reemplazo a nueva_cadena.
    • Si el carácter no es una consonante (es una vocal, un número, un símbolo o un espacio), se añade el carácter original char a nueva_cadena.
    • Finalmente, devuelve la nueva_cadena con todas las consonantes reemplazadas.

Ejemplos de Uso:

Los ejemplos muestran cómo la función reemplaza las consonantes en diferentes cadenas de texto con el carácter de reemplazo especificado. Se incluyen casos con mayúsculas, minúsculas, cadenas solo con vocales, números, símbolos y una cadena vacía.