2 usuarios conectados

Funciones. Valores por defecto en argumentos en Python

Comparte esto

Siguiendo con el tema de funciones, vamos a explorar los valores por defecto en los argumentos. Python te permite especificar valores predeterminados para los parámetros de una función. Esto hace que la función sea más flexible, ya que los argumentos con valores por defecto se vuelven opcionales al llamar a la función. Si no se proporciona un valor para un parámetro con un valor por defecto durante la llamada, se utiliza el valor predeterminado.

Definición de Argumentos con Valores por Defecto:

Para asignar un valor por defecto a un parámetro en la definición de una función, simplemente utiliza el operador de asignación (=) después del nombre del parámetro, seguido del valor predeterminado.

Sintaxis:

Python
 
def nombre_de_la_funcion(parametro1, parametro2="valor_por_defecto", parametro3=otro_valor_por_defecto):
    """Función con algunos parámetros con valores por defecto."""
    # Bloque de código de la función
    print(f"Parámetro 1: {parametro1}")
    print(f"Parámetro 2: {parametro2}")
    print(f"Parámetro 3: {parametro3}")

Reglas Importantes:

Ejemplos de Llamada a Funciones con Valores por Defecto:

Consideremos la siguiente función:

Python
 
def saludar(nombre, saludo="Hola", puntuacion="!"):
    """Saluda a una persona con un saludo y puntuación opcionales."""
    mensaje = f"{saludo}, {nombre}{puntuacion}"
    print(mensaje)

Ahora veamos cómo podemos llamar a esta función:

  1. Proporcionando solo el argumento obligatorio:

    Python
     
    saludar("Juan")  # Usa los valores por defecto para saludo y puntuacion
    # Salida: Hola, Juan!
    
  2. Sobrescribiendo el valor por defecto de un argumento:

    Python
     
    saludar("María", saludo="Buenos días")  # Usa "Buenos días" para saludo, el resto por defecto
    # Salida: Buenos días, María!
    
  3. Sobrescribiendo múltiples valores por defecto usando argumentos con nombre:

    Python
     
    saludar("Pedro", puntuacion=".")  # Usa "." para puntuacion, el resto por defecto
    # Salida: Hola, Pedro.
    
    saludar("Sofía", saludo="Ciao", puntuacion="?")  # Sobrescribe ambos valores por defecto
    # Salida: Ciao, Sofía?
    
  4. Llamando con todos los argumentos posicionalmente:

    Python
     
    saludar("Luis", "Qué tal", "...")
    # Salida: Qué tal, Luis...
    

Beneficios de los Valores por Defecto en Argumentos:

Los valores por defecto en los argumentos son una característica poderosa de las funciones en Python que contribuyen a la creación de código más adaptable y fácil de usar.