Semana 6 de 8
Funciones
Conforme los programas crecen, los estudiantes empaquetan código en funciones que pueden nombrar y reutilizar. Construyen pequeñas funciones de ayuda (saludar al jugador, mostrar el puntaje) y las llaman cuando hacen falta, que es exactamente cómo el juego final se mantendrá organizado.
- Tiempo estimado
- 60 minutos
- Proyecto
- Funciones de ayuda para un juego
La idea
Una función es una receta reutilizable. Escribes los pasos una sola vez después de def y le das un nombre; a partir de ahí, ejecutas todos esos pasos solo con llamar el nombre. Un parámetro te deja darle a la función información distinta cada vez, así que una sola función saludar puede darle la bienvenida a cualquier jugador. Escribir una función no la ejecuta; llamarla sí.
Lo que vas a aprender
- Definir una función con def y ejecutarla llamando su nombre.
- Pasar información a una función usando un parámetro.
- Explicar por qué las funciones te evitan repetir código.
- Arreglar una llamada a función a la que le falta su argumento.
Palabras nuevas
- función
- Un bloque de código con nombre que puedes ejecutar una y otra vez llamando su nombre.
- def
- La palabra clave que crea una nueva función.
- parámetro
- Una entrada que una función recibe, escrita dentro de sus paréntesis.
- llamar
- Ejecutar una función escribiendo su nombre con paréntesis, como saludar("Alex").
Proyecto: Funciones de ayuda para un juego
Edita el código inicial de abajo y presiona Ejecutar para verlo funcionar. Usa Restablecer código inicial para volver al original cuando quieras.
Ejecuta tu programa para ver la salida.
Resultado esperado
¡Bienvenido, Alex!
Puntaje: 0
Puntaje: 10Mini desafío
Escribe una nueva función llamada fin_del_juego() que imprima ¡Gracias por jugar! y llámala al final del programa.
Desafío de depuración
Esto se detiene con un error sobre un argumento faltante. La función saludar pide un jugador dentro de sus paréntesis. Mira la última línea: ¿qué se le olvidó darle a la llamada?
Código con errores
def saludar(jugador):
print(f"¡Bienvenido, {jugador}!")
saludar()Ver soluciónOcultar solución
Dale un valor a la función cuando la llames:
saludar("Alex")Desafío de extensión
Escribe una función siguiente_nivel(nivel) que imprima una línea como ¡Llegaste al nivel 5! usando el número que le pases, y luego llámala con varios niveles distintos.
Reflexiona
Escribiste mostrar_puntaje una vez y la usaste dos veces. En tu juego final, ¿qué es algo que harás más de una vez y que podría volverse una función?
Notas para docentes
Separa dos ideas con claridad: definir una función no la ejecuta; llamarla sí. El error frecuente es definir una función con un parámetro y luego llamarla con paréntesis vacíos. Mantén cada función corta y con un solo trabajo para que la ganancia (la reutilización) sea evidente.
¿Vas a dirigir esta lección? Consulta la guía para docentes y bibliotecarios para saber cómo darla, los errores más comunes y una actividad de respaldo sin computadora.
¿Terminaste esta lección? Márcala como completada para desbloquear la siguiente semana.