Solución al Ejercicio: Obtener iniciales
📋 Copiar código
def obtener_iniciales(nombre_completo):
"""
Obtiene las iniciales de un nombre completo.
Args:
nombre_completo: La cadena de texto con el nombre completo.
Returns:
Una cadena con las iniciales en mayúsculas y sin espacios.
"""
iniciales = ""
palabras = nombre_completo.split()
for palabra in palabras:
if palabra: # Evitar procesar cadenas vacías resultantes de múltiples espacios
iniciales += palabra[0].upper() + "."
return iniciales.rstrip(".") # Eliminar el punto final si lo hubiera
# Ejemplos de uso
nombre1 = "Juan Pérez García"
resultado1 = obtener_iniciales(nombre1)
print(f"Iniciales de '{nombre1}': '{resultado1}'")
nombre2 = "María López"
resultado2 = obtener_iniciales(nombre2)
print(f"Iniciales de '{nombre2}': '{resultado2}'")
nombre3 = "Pedro Sánchez Fernández Ruiz"
resultado3 = obtener_iniciales(nombre3)
print(f"Iniciales de '{nombre3}': '{resultado3}'")
nombre4 = "Ana"
resultado4 = obtener_iniciales(nombre4)
print(f"Inicial de '{nombre4}': '{resultado4}'")
nombre5 = ""
resultado5 = obtener_iniciales(nombre5)
print(f"Iniciales de '' : '{resultado5}'")
nombre6 = " Carlos Martínez "
resultado6 = obtener_iniciales(nombre6)
print(f"Iniciales de '{nombre6}': '{resultado6}'")
Explicación del Código:
- Función
obtener_iniciales(nombre_completo)
:
- Inicializa una cadena vacía
iniciales
para almacenar las iniciales.
- Divide la cadena
nombre_completo
en una lista de palabras
utilizando el método split()
.
- Itera a través de cada
palabra
en la lista palabras
.
- Dentro del bucle, verifica si la
palabra
no está vacía (para evitar errores con múltiples espacios
en la entrada).
- Si la palabra no está vacía, toma el
primer carácter de la palabra (
palabra[0]
), lo convierte a
mayúsculas usando .upper()
, le añade un punto (.
)
y lo concatena a la cadena iniciales
.
- Finalmente, utiliza
iniciales.rstrip(".")
para eliminar cualquier punto final que
pudiera haber quedado si la cadena de entrada terminaba con espacios.
Ejemplos de Uso:
Los ejemplos muestran cómo la función extrae las
iniciales de diferentes nombres completos, manejando casos con uno o varios
nombres/apellidos y también cadenas vacías o con espacios adicionales.