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.
Fuentes consultadas
- Funciones (MDN Web Docs)