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:
- 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.