Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Argumentos Arbitrarios | Argumentos Arbitrarios
Tutorial de Funciones en Python
course content

Contenido del Curso

Tutorial de Funciones en Python

Tutorial de Funciones en Python

1. ¿Qué Es una Función en Python?
2. Argumentos Posicionales y Opcionales
3. Argumentos Arbitrarios
4. Especificación del Valor de Retorno de la Función
5. Recursión y Funciones Lambda

book
Argumentos Arbitrarios

Ya hemos explorado los argumentos posicionales y opcionales de la función. Sin embargo, ¿qué debemos hacer cuando hay numerosos argumentos, o cuando no estamos seguros de todos los argumentos que deben pasarse a una función? Este problema puede resolverse utilizando argumentos arbitrarios (argumentos de longitud variable). Estos argumentos permiten que una función acepte un número no especificado de argumentos. Esto es particularmente útil cuando deseas definir una función que pueda tomar un número variable de valores de entrada sin especificar de antemano el número exacto de argumentos.

Nota

Recuerda que cada argumento puede ser una estructura de datos, como una lista o un diccionario. Puedes pasar un número arbitrario de tales estructuras usando argumentos arbitrarios.

En Python, puedes definir argumentos arbitrarios como un único argumento posicional colocando un asterisco * antes del nombre del argumento. Aquí tienes un ejemplo:

12345678
# Define function with arbitrary arguments named values def calculate_sum(*values): return sum(values) # Test the function using different number of arguments print(calculate_sum(1, 2, 3)) print(calculate_sum(1, 2, 3, 4)) print(calculate_sum(1, 2, 3, 4, 5))
copy

En el código anterior, usamos * para declarar que la variable values contiene varios argumentos arbitrarios y se interpreta como una tupla. Luego, usamos la función incorporada sum para calcular la suma. Podemos ver que el resultado es correcto para todos los ejemplos, y no tenemos que especificar el número de argumentos directamente. Nota que usamos este argumento por nombre sin * en el cuerpo de la función.

Nota

Para definir una tupla de argumentos arbitrarios, es suficiente usar * antes del nombre del argumento. Sin embargo, se recomienda usar la construcción *args. Esto mejora la interpretabilidad y legibilidad del código.

123456789101112131415161718
def example_function(*args): # Print the type of args print(f'Type of args: {type(args)}') # Print the whole tuple print(f'Args tuple: {args}') # Iterate over the tuple for arg in args: print(arg) # Call the function without any arguments print("Call without arguments:") example_function() # Call the function with one argument print("\nCall with one argument:") example_function(1) # Call the function with multiple arguments print("\nCall with multiple arguments:") example_function(1, 2, 3, 'hello', [4, 5, 6])
copy

Como puedes ver en los resultados:

  • Cuando la función se llama sin argumentos, args será una tupla vacía ().
  • Cuando la función se llama con un argumento, args será una tupla con un elemento (1,).
  • Cuando la función se llama con múltiples argumentos, todos ellos se almacenan en la tupla, por ejemplo (1, 2, 3, 'hello', [4, 5, 6]).

Con *args, puedes trabajar con los valores tal como lo harías con cualquier otra tupla en Python.

Tarea
test

Swipe to show code editor

Escribe una función que calcule el valor promedio de un número arbitrario de argumentos. Usa args como el nombre de un argumento arbitrario.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 1
toggle bottom row

book
Argumentos Arbitrarios

Ya hemos explorado los argumentos posicionales y opcionales de la función. Sin embargo, ¿qué debemos hacer cuando hay numerosos argumentos, o cuando no estamos seguros de todos los argumentos que deben pasarse a una función? Este problema puede resolverse utilizando argumentos arbitrarios (argumentos de longitud variable). Estos argumentos permiten que una función acepte un número no especificado de argumentos. Esto es particularmente útil cuando deseas definir una función que pueda tomar un número variable de valores de entrada sin especificar de antemano el número exacto de argumentos.

Nota

Recuerda que cada argumento puede ser una estructura de datos, como una lista o un diccionario. Puedes pasar un número arbitrario de tales estructuras usando argumentos arbitrarios.

En Python, puedes definir argumentos arbitrarios como un único argumento posicional colocando un asterisco * antes del nombre del argumento. Aquí tienes un ejemplo:

12345678
# Define function with arbitrary arguments named values def calculate_sum(*values): return sum(values) # Test the function using different number of arguments print(calculate_sum(1, 2, 3)) print(calculate_sum(1, 2, 3, 4)) print(calculate_sum(1, 2, 3, 4, 5))
copy

En el código anterior, usamos * para declarar que la variable values contiene varios argumentos arbitrarios y se interpreta como una tupla. Luego, usamos la función incorporada sum para calcular la suma. Podemos ver que el resultado es correcto para todos los ejemplos, y no tenemos que especificar el número de argumentos directamente. Nota que usamos este argumento por nombre sin * en el cuerpo de la función.

Nota

Para definir una tupla de argumentos arbitrarios, es suficiente usar * antes del nombre del argumento. Sin embargo, se recomienda usar la construcción *args. Esto mejora la interpretabilidad y legibilidad del código.

123456789101112131415161718
def example_function(*args): # Print the type of args print(f'Type of args: {type(args)}') # Print the whole tuple print(f'Args tuple: {args}') # Iterate over the tuple for arg in args: print(arg) # Call the function without any arguments print("Call without arguments:") example_function() # Call the function with one argument print("\nCall with one argument:") example_function(1) # Call the function with multiple arguments print("\nCall with multiple arguments:") example_function(1, 2, 3, 'hello', [4, 5, 6])
copy

Como puedes ver en los resultados:

  • Cuando la función se llama sin argumentos, args será una tupla vacía ().
  • Cuando la función se llama con un argumento, args será una tupla con un elemento (1,).
  • Cuando la función se llama con múltiples argumentos, todos ellos se almacenan en la tupla, por ejemplo (1, 2, 3, 'hello', [4, 5, 6]).

Con *args, puedes trabajar con los valores tal como lo harías con cualquier otra tupla en Python.

Tarea
test

Swipe to show code editor

Escribe una función que calcule el valor promedio de un número arbitrario de argumentos. Usa args como el nombre de un argumento arbitrario.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 1
Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
We're sorry to hear that something went wrong. What happened?
some-alt