Declarar una función en Python con def y crearle parámetros

Cuando llamas a la función print() o len(), les pasas valores, llamados argumentos, escribiéndolos entre los paréntesis. También puedes definir tus propias funciones que acepten argumentos. Escribe este ejemplo en el editor de archivos y guárdalo como helloFunc2.py:

➊ def hello(name):
    ➋ print('Hello, ' + name)

➌ hello('Alice')
   hello('Bob')

Cuando se ejecuta este programa, la salida tendrá el siguiente aspecto:

Hello, Alice
Hello, Bob

Puedes ver la ejecución de este programa en https://autbor.com/hellofunc2/. La definición de la función hello() en este programa tiene un parámetro llamado name ➊. Los parámetros son variables que contienen argumentos. Cuando se llama a una función con argumentos, éstos se almacenan en los parámetros. La primera vez que se llama a la función hello(), se le pasa el argumento 'Alice' ➌. La ejecución del programa entra en la función, y el parámetro name se establece automáticamente en 'Alice', que es lo que se imprime con la sentencia print() ➋.

Una cosa especial a tener en cuenta sobre los parámetros es que el valor almacenado en un parámetro se olvida cuando la función retorna. Por ejemplo, si añadieras print(name) después de hello('Bob') en el programa anterior, el programa te daría un NameError porque no hay ninguna variable llamada name. Esta variable se destruye después de que la llamada a la función hello('Bob') retorna, por lo que print(name) se referiría a una variable name que no existe.

Esto es similar a cómo las variables de un programa se olvidan cuando el programa termina.

Deja una respuesta