Solución al Ejercicio: Invertir capitalización
📋 Copiar código
def intercambiar_case(texto):
"""
Invierte la capitalización de cada letra en una cadena de texto.
Args:
texto: La cadena de texto de entrada.
Returns:
Una nueva cadena con la capitalización de las letras invertida.
"""
nueva_cadena = ""
for char in texto:
if 'a' <= char <= 'z':
nueva_cadena += char.upper()
elif 'A' <= char <= 'Z':
nueva_cadena += char.lower()
else:
nueva_cadena += char
return nueva_cadena
# Ejemplos de uso
texto1 = "Hola Mundo"
resultado1 = intercambiar_case(texto1)
print(f"'{texto1}' con la capitalización invertida: '{resultado1}'")
texto2 = "ProgramacionEnPython"
resultado2 = intercambiar_case(texto2)
print(f"'{texto2}' con la capitalización invertida: '{resultado2}'")
texto3 = "aBcDeFgHiJkLmNoPqRsTuVwXyZ"
resultado3 = intercambiar_case(texto3)
print(f"'{texto3}' con la capitalización invertida: '{resultado3}'")
texto4 = "123 !?."
resultado4 = intercambiar_case(texto4)
print(f"'{texto4}' con la capitalización invertida: '{resultado4}'")
texto5 = ""
resultado5 = intercambiar_case(texto5)
print(f"'{texto5}' con la capitalización invertida: '{resultado5}'")
texto6 = "eSpAÑA"
resultado6 = intercambiar_case(texto6)
print(f"'{texto6}' con la capitalización invertida: '{resultado6}'")
Explicación del Código:
- Función
intercambiar_case(texto)
:
- 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, realiza las
siguientes comprobaciones:
if 'a' <= char <= 'z'
:
Si el carácter es una letra minúscula, se convierte a mayúscula
utilizando char.upper()
y se añade a nueva_cadena
.
elif 'A' <= char <= 'Z'
:
Si el carácter es una letra mayúscula, se convierte a minúscula
utilizando char.lower()
y se añade a nueva_cadena
.
else
: Si el carácter
no es una letra (es un número, símbolo o espacio), se añade tal cual
a nueva_cadena
.
- Finalmente, devuelve la
nueva_cadena
con la capitalización invertida.
Ejemplos de Uso:
Los ejemplos muestran cómo la función invierte
la capitalización de las letras en diferentes cadenas de texto, dejando los
demás caracteres sin modificar. Se incluyen casos con mayúsculas, minúsculas,
mezclas de ambas, números, símbolos y una cadena vacía. También se incluye un
ejemplo con una palabra en español para demostrar que funciona con caracteres
acentuados siempre que el sistema los reconozca como letras.