Módulo 5: Funciones

introduccion-programacion/funciones-modularizacion
@yoezequiel 16-04-2025

Una función es un bloque de código con un nombre, que agrupa una tarea específica y que puede ejecutarse (o “llamarse”) varias veces sin necesidad de reescribir todo.

📌 Ejemplo mental:

Imaginá que querés preparar café. No necesitás repasar cada paso cada vez: simplemente decís “preparar café”, y sabés que eso implica hervir agua, poner el filtro, el café, etc.
En programación, una función es como esa receta: se define una vez, y se puede usar muchas.

🎯 ¿Por qué usar funciones?


🛠️ Definición y llamado de funciones

🔹 Definir una función

Definir una función significa darle un nombre y decir qué hace.

En términos simples: le enseñás al programa una nueva palabra que representa una acción.

En Python, se hace con la palabra clave def, seguida del nombre y los paréntesis.

🔹 Llamar (usar) una función

Una vez definida, podés llamarla cuando la necesites. Eso activa el código que contiene.

Ejemplo conceptual: Definís la función saludar().
Después, simplemente escribís saludar() cada vez que quieras que ocurra la acción.

🧠 Definir ≠ ejecutar. Una función no hace nada hasta que la llamás.


📥 Parámetros y argumentos

🔸 ¿Qué son los parámetros?

Los parámetros son variables que se definen cuando creás la función. Le indican qué tipo de datos espera para poder funcionar.

🔸 ¿Y los argumentos?

Los argumentos son los valores reales que le das a la función cuando la llamás.

Ejemplo mental: Imaginá una receta que dice: “usá X gramos de harina”.
→ “X” es el parámetro (lo que espera).
→ “200 gramos” es el argumento (lo que le das).

⚠️ Es fundamental que los parámetros y argumentos coincidan correctamente.


🔄 Retorno de valores

Una función no solo puede hacer cosas, sino también devolver un resultado.
Eso se llama retorno (o return en inglés).

📌 ¿Por qué es útil?

Porque podés usar el resultado que calculó la función en otra parte del programa.

Ejemplo conceptual:
Una función que suma dos números no solo los muestra, sino que devuelve la suma para que la puedas usar en otro cálculo.

🧠 Importante: una función puede devolver un solo valor, pero ese valor puede ser una lista, una cadena, un número o incluso otra función.


📦 Ámbito (scope) de variables

🧭 ¿Qué es el ámbito?

El ámbito de una variable define dónde puede usarse y dónde no.
En otras palabras: una variable solo “vive” dentro de ciertos espacios.

Hay dos ámbitos principales:

Ejemplo mental: Una llave que usás solo en tu casa no abre otra casa. Esa es una variable local.
Una llave maestra que abre todas las puertas sería una variable global.

⚠️ No es buena práctica abusar de variables globales, porque puede generar confusión y errores difíciles de encontrar.


🧰 Funciones integradas vs. funciones definidas por el usuario

🔹 Funciones integradas (built-in)

Python ya viene con muchas funciones útiles listas para usar.
Ejemplos conocidos son:

No necesitás definirlas: ya existen.


🔹 Funciones definidas por el usuario

Estas son las funciones que vos creás para resolver necesidades específicas.
Las definís con def, les ponés nombre, y las usás como quieras.

Ventajas:


✅ Cierre del módulo

Las funciones son el corazón de cualquier programa organizado y escalable. Te permiten pensar en términos de acciones concretas, reutilizables, y con entradas y salidas claras.

Ahora que sabés cómo definirlas, usarlas, darles datos y obtener resultados, estás listo para crear programas más estructurados y potentes.

Lección Anterior Curso Siguiente Lección