Las funciones son bloques de código que realizan una tarea específica y pueden ser reutilizados en diferentes partes de un programa.
Estructurar nuestro código en funciones nos ayuda a hacerlo más organizado, de forma que sea más modular, más sencillo de mantener, y más fácil de reutilizar.
Si quieres aprender más sobre Qué es una función
consulta el Curso de Introducción a la Programación leer más
Definición de una función
En Python, una función se define con la palabra clave def
, seguida del nombre de la función y paréntesis que pueden contener los parámetros de entrada. Asi,
def nombre_de_la_funcion(parametros):
# Bloque de código de la función
# Puede contener múltiples instrucciones
return resultado
- nombre_de_la_funcion: Es el nombre que le damos a nuestra función.
- parametros: Son los parámetros que nuestra función puede recibir. Estos son opcionales y pueden ser utilizados para pasar información a la función.
- return resultado: La instrucción
return
nos permite devolver un resultado de la función. Es opcional y puede devolver cualquier tipo de dato.
Llamar a una función
Una vez que tenemos una función definida, esta puede ser llamada desde cualquier parte del programa (a esto también se le llama, invocar a la función).
Para llamar a una función, se utiliza su nombre seguido de paréntesis. En caso de que la función requiera argumentos, tendremos que ponerlos entre los paréntesis.
Por ejemplo, si tenemos esta función:
def saludar():
print("Hola Luis")
Podemos invocarla así:
saludar()
En este caso, se llama a la función saludar
lo que provocará que se muestre el mensaje “Hola Luis”.
Parámetros y argumentos
Los parámetros son variables que podemos pasar a nuestra función a la hora de invocarla. Esto nos permite crear funciones mucho más flexibles y reutilizables.
Por ejemplo, imaginemos que tenemos una función que simplemente suma dos números. Podemos hacer que reciba dos parámetros y realice la suma.
En este caso, a
y b
son parámetros de la función suma
(podíamos haber cogido cualquier otro nombre para a
y b
, los nombres los elegimos nosotros)
def suma(a, b):
print(a + b) # Output: 8
suma(3, 5) # llamamos a la función
En el ejemplo, hemos llamado a la función pasándole 3
y 5
como argumentos. Podríamos llamarla con cualquier otros números, lo que permite que nuestra función sea resusable.
Los parámetros son las variables que define la función. En el ejemplo a
y b
Por otro lado, los argumentos son los valores concretos que pasamos a la función en una invocación. En el ejemplo 3
y 5
Pero tampoco os rayéis demasiado con este detalle
Valores de retorno
Las funciones en Python pueden devolver un valor utilizando la palabra clave return
. Este valor puede ser asignado a una variable al llamar a la función.
def dameNumero()
return 8
resultado = dameNumero(8)
print(resultado) # Output: 8
Por ejemplo, aquí la función dameNumero()
devuelve 8.
Ejemplo básico
Si combinamos lo anterior, ya podemos hacer una función muy simple que suma dos números y devuelve el resultado:
def sumar(a, b):
resultado = a + b
return resultado
En este ejemplo
- La función
sumar
recibe dos parámetrosa
yb
- Suma estos valores
- Devuelve el resultado de la suma
Ahora podemos llamar a esta función y utilizarla en nuestro programa:
resultado_suma = sumar(5, 3)
print("El resultado de la suma es:", resultado_suma) # Salida: El resultado de la suma es: 8