Diccionario

Función

Un bloque de código con nombre que realiza una tarea concreta, puede recibir datos y devolver un resultado.

Una función agrupa instrucciones bajo un nombre para poder usarlas cuando haga falta. Recibe datos de entrada (parámetros) y puede devolver un resultado (con return).

Dividir un programa en funciones pequeñas lo hace más fácil de leer, de probar y de corregir. Cuando una función pertenece a un objeto o a una clase se suele llamar método.

Un ejemplo

calcularIva(precio) recibe un precio y devuelve el precio con IVA. La usas en el carrito, en la factura y en el resumen sin repetir la fórmula.

Por qué importa

Las funciones son la herramienta principal para organizar un programa. Agrupan un trozo de lógica bajo un nombre y permiten reutilizarlo sin copiar y pegar. Si descubres un fallo, lo corriges en un solo sitio y se arregla en todas partes donde la usas.

Una buena función hace una sola cosa y su nombre la describe. Funciones pequeñas son más fáciles de probar, de leer y de reutilizar. Los programas que no usan funciones acaban convertidos en un bloque largo y repetitivo que nadie se atreve a tocar.

Confusiones frecuentes

Es frecuente confundir imprimir con devolver. print muestra algo por pantalla, mientras que return entrega un valor a quien llamó a la función para que lo use. Otro error es definir una función y olvidar llamarla: escribir saludar sin paréntesis no la ejecuta, solo hace referencia a ella. Los parámetros son los nombres que aparecen en la definición y los argumentos son los valores que pasas al llamarla.

Preguntas frecuentes

¿Una función puede devolver varios valores?

Técnicamente devuelve uno, pero puede ser una tupla, un array o un objeto que contenga varios. Python permite escribir return a, b y recibirlos con x, y = f().

¿Qué ocurre si no escribo `return`?

La función devuelve un valor vacío por defecto: None en Python y undefined en JavaScript.