argumentos de función Python

publicado en: Articles | 0

argumentos

en el tema función definida por el usuario, aprendimos sobre definir una función y llamarla. De lo contrario, la llamada a la función dará lugar a un error. He aquí un ejemplo.

Salida

Hello Monica, Good morning!

Aquí, la función greet() tiene dos parámetros.

dado que hemos llamado a esta función con dos argumentos, se ejecuta sin problemas y no obtenemos ningún error.,

si lo llamamos con un número diferente de argumentos, el intérprete mostrará un mensaje de error. A continuación se muestra una llamada a esta función con uno y ningún argumento junto con sus respectivos mensajes de error.

>>> greet("Monica") # only one argumentTypeError: greet() missing 1 required positional argument: 'msg'
>>> greet() # no argumentsTypeError: greet() missing 2 required positional arguments: 'name' and 'msg'

argumentos de función variables

hasta ahora, las funciones tenían un número fijo de argumentos. En Python, hay otras formas de definir una función que puede tomar un número variable de argumentos.

a continuación se describen tres formas diferentes de este tipo.,

argumentos predeterminados de Python

los argumentos de función pueden tener valores predeterminados en Python.

Podemos proporcionar un valor predeterminado a un argumento utilizando el operador de asignación (=). He aquí un ejemplo.

Salida

Hello Kate, Good morning!Hello Bruce, How do you do?

En esta función, el parámetro name no tiene un valor por defecto y es necesario (obligatorio) durante una llamada.,

Por otro lado, el parámetro msg tiene un valor predeterminado de "Good morning!". Por lo tanto, es opcional durante una llamada. Si se proporciona un valor, sobrescribirá el valor predeterminado.

cualquier número de argumentos en una función puede tener un valor predeterminado. Pero una vez que tenemos un argumento predeterminado, todos los argumentos a su derecha también deben tener valores predeterminados.

esto significa que los argumentos no predeterminados no pueden seguir a los argumentos predeterminados., Por ejemplo, si hubiéramos definido el encabezado de la función anterior como:

def greet(msg = "Good morning!", name):

obtendríamos un error como:

SyntaxError: non-default argument follows default argument

argumentos de palabras clave de Python

cuando llamamos a una función con algunos valores, estos valores se asignan a los argumentos de acuerdo con su posición.

Python permite llamar a funciones usando argumentos de palabras clave. Cuando llamamos a funciones de esta manera, el orden (posición) de los argumentos se puede cambiar. Las siguientes llamadas a la función anterior son todas válidas y producen el mismo resultado.,

como podemos ver, Podemos mezclar argumentos posicionales con argumentos de palabras clave durante una llamada a una función. Pero debemos tener en cuenta que los argumentos de palabras clave deben seguir argumentos posicionales.

tener un argumento posicional después de los argumentos de la palabra clave dará lugar a errores. Por ejemplo, la llamada a la función como sigue:

greet(name="Bruce","How do you do?")

Se producirá un error:

SyntaxError: non-keyword arg after keyword arg

Python Argumentos Arbitrarios.

a Veces, no sabemos de antemano el número de argumentos que se pasan a una función., Python permite manejar este tipo de situaciones a través de llamadas a funciones con un número arbitrario de argumentos.

en la definición de la función, usamos un asterisco ( * ) antes del nombre del parámetro para denotar este tipo de argumento. He aquí un ejemplo.

Salida

Hello MonicaHello LukeHello SteveHello John

Aquí, hemos llamado a la función con múltiples argumentos. Estos argumentos se envuelven en una tupla antes de pasar a la función. Dentro de la función, usamos un bucle for para recuperar todos los argumentos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *