Qué es una función en Python
Una función agrupa unas instrucciones bajo un nombre para ejecutarlas cuando las necesites.
Definición
Una función es un bloque de instrucciones con nombre. Se define con def, y sus instrucciones, que van con sangría, no se ejecutan hasta que alguien la llama: doble(6).
Puede recibir datos mediante parámetros y entregar un resultado con return. Definir una función y llamarla son dos momentos distintos.
Ejemplo
def doble(numero):
return numero * 2
resultado = doble(6)
print(resultado)
print(resultado + 3)Al ejecutarlo, Python muestra:
12 15
Puedes copiar el ejemplo y cambiarlo en el editor Python del navegador: modificar un valor y predecir el resultado es la mejor forma de fijar el concepto.
Error frecuente
Una función que solo imprime devuelve None: ver un número en pantalla no significa que puedas usarlo en otro cálculo. Para reutilizar el resultado, usa return.
Cómo se diferencia de otros conceptos
Una función no es lo mismo que un método. Un método es una función que pertenece a un objeto y se llama con un punto, como texto.upper(). Tampoco es lo mismo definirla que llamarla: def solo registra la tarea, y los paréntesis son los que la ejecutan.
Preguntas frecuentes
¿Para qué sirve return?
Entrega un valor a quien llamó a la función y termina su ejecución. Sin return, la función devuelve None.
¿Cuándo debería crear una función?
Cuando un grupo de instrucciones forme una tarea que puedas nombrar y quieras reutilizar o probar por separado. No conviertas cada línea en una función.