馃З Cap铆tulo 9: Funciones en Python (Mis Bloques)
En PictoBlox, cuando quieres organizar tu c贸digo, usas “Mis bloques”.
馃憠 En Python, el equivalente a eso son las funciones.
Una funci贸n es un bloque de c贸digo que puedes reutilizar cuando quieras.
馃 ¿Qu茅 es una funci贸n?
Es una forma de agrupar instrucciones para no repetir c贸digo.
馃憠 En lugar de escribir lo mismo muchas veces… lo escribes una sola vez.
馃摎 C贸mo crear una funci贸n
def saludar():
sprite.say("Hola", 2)
sprite.say("Hola", 2)
Explicaci贸n:
- def → indica que est谩s creando una funci贸n
- saludar → nombre de la funci贸n
- () → par谩metros (vac铆o en este caso)
▶️ C贸mo usar una funci贸n
saludar()
馃憠 Esto ejecuta todo el c贸digo que est谩 dentro de la funci贸n.
馃摜 Funciones con par谩metros
Puedes pasar informaci贸n a la funci贸n (igual que en “Mis bloques”).
def mover(pasos):
sprite.move(pasos)
sprite.move(pasos)
Uso:
mover(10)
mover(20)
mover(20)
馃憠 El valor cambia seg煤n lo que le pases.
馃攣 Ventajas de las funciones
- No repites c贸digo
- El programa es m谩s limpio
- Es m谩s f谩cil de mantener
- Puedes reutilizar l贸gica
馃И Ejemplo pr谩ctico
def avanzar():
sprite.move(10)
sprite.say("Avanzo", 1)
while True:
if sprite.iskeypressed("w"):
avanzar()
sprite.move(10)
sprite.say("Avanzo", 1)
while True:
if sprite.iskeypressed("w"):
avanzar()
馃殌 Reto Abutuber: Crear tus propios bloques
Crea funciones para:
- Avanzar
- Retroceder
- Girar
Y 煤salas dentro de un while True.
Ver soluci贸n
def avanzar():
sprite.move(10)
def retroceder():
sprite.move(-10)
def girar():
sprite.turn(10)
while True:
if sprite.iskeypressed("w"):
avanzar()
if sprite.iskeypressed("s"):
retroceder()
if sprite.iskeypressed("d"):
girar()
sprite.move(10)
def retroceder():
sprite.move(-10)
def girar():
sprite.turn(10)
while True:
if sprite.iskeypressed("w"):
avanzar()
if sprite.iskeypressed("s"):
retroceder()
if sprite.iskeypressed("d"):
girar()
馃挕 Consejo Abutuber: Si sabes usar funciones, ya est谩s programando como un profesional. Esto es exactamente lo que hacen los desarrolladores reales.