1 usuario conectado

Obtener iniciales. Ejercicio en Python

Comparte esto

 

Escribe una función en Python llamada obtener_iniciales que tome una cadena de texto que represente un nombre completo (con el nombre y uno o varios apellidos separados por espacios) y devuelva una cadena con las iniciales del nombre completo en mayúsculas, seguidas de un punto y sin espacios entre ellas.



Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  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:

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