CC2 · Unidad 1 · Módulo 2

Introducción a las Funciones

Aprende a crear bloques de código reutilizables para hacer tus programas más inteligentes, ordenados y eficientes.

¿Qué es una función?

En el siguiente video exploraremos el concepto de función. ¿Por qué las necesitamos y cómo nos facilitan la vida al momento de programar?

En programación, una función es un bloque de código que realiza una tarea específica y puede ser reutilizado en diferentes partes del programa.

Las funciones permiten definir un proceso una sola vez y ejecutarlo tantas veces como sea necesario enviándole diferentes datos. Al terminar su trabajo, siempre retorna un dato como resultado.

Definición de una función

Para crear (definir) una función en Python, debemos tener claro que está constituida por tres partes fundamentales:

1. Cabecera

Usamos la palabra reservada def, seguida del nombre de la función y paréntesis que pueden contener parámetros, finalizando siempre con dos puntos :.

2. Cuerpo

Las instrucciones o comandos. Deben estar tabuladas (indentadas) hacia la derecha, indicando que pertenecen al interior de la función.

3. Retorno

Una función siempre devuelve un dato. Usamos la palabra reservada return seguida del dato o variable que la función entregará al finalizar.

def sumar(a, b): # 1. Cabecera resultado = a + b # 2. Cuerpo (Tabulado) return resultado # 3. Retorno
✦ Pregunta 1
¿Qué palabra reservada indica a la función que debe finalizar y entregar su resultado?
Adef
Breturn
Cprint
🖥 Ejercicio 1 — Tu primera función
Completa la función multiplicar. Escribe en el cuerpo (tabulado) el código para que retorne la multiplicación de a por b.

Parámetros y Llamadas

Parámetros

Son variables temporales que reciben valores desde afuera para que la función pueda trabajar con ellos.

def saludar(nombre): return "Hola, " + nombre

Llamada a una función (Invocación)

Definir una función no hace que se ejecute. Para utilizarla, debemos "llamarla" por su nombre y pasarle los argumentos reales dentro de los paréntesis.

# Definimos la función def saludar(nombre): return "Hola, " + nombre # La llamamos y la imprimimos en consola print(saludar("Juan"))
✦ Pregunta 2
Si escribes en tu código únicamente saludar("Ana") (sin usar print) ¿qué se mostrará en la consola negra?
AHola, Ana
BAbsolutamente nada. La función calcula el dato, pero no le pedimos que lo imprima.
CDará un error de sintaxis.
🖥 Ejercicio 2 — Argumentos Múltiples
Crea una función bienvenida(nombre, ciudad) que retorne el texto: "Hola [nombre] de [ciudad]". Luego, llama a la función dentro de un print() usando tus propios datos.

Flujo de Ejecución

El código no se ejecuta de arriba hacia abajo cuando encuentra un def. Python simplemente "memoriza" la función. Las funciones solo se ejecutan en el orden en el que son llamadas.

def primera(): print("Primera función") def segunda(): print("Segunda función") # El código real empieza aquí primera() segunda()
✦ Pregunta 3
Si defino primero la funcion_A() y luego la funcion_B(), pero al final del archivo escribo funcion_B() antes que funcion_A(), ¿cuál se ejecuta primero?
ALa función A, porque está escrita arriba.
BLa función B, porque el orden de ejecución lo define la llamada, no la definición.
🖥 Ejercicio 3 — Orden en la corte
Este código dará un error o imprimirá los pasos en el orden incorrecto. Reorganiza las líneas (y las llamadas) para que la consola imprima exactamente "Paso 1" seguido de "Paso 2". ¡No cambies las funciones, solo su orden y la forma en que las llamas!

Buenas Prácticas de Diseño

Crear funciones es un arte. Para mantener un código limpio y profesional, sigue estas reglas:

¿Por qué usamos return en lugar de print en la teoría?
Si una función hace un print(), solo muestra el dato en pantalla, pero el resto del programa no puede usar ese valor matemático. Si usa return, el programa puede guardar ese resultado en una variable y seguir operando con él más adelante.
Consola de Pruebas

Prueba libremente tu código Python aquí.

Cargando motor de Python...