Se definen con def:
def saludar():
print("¡Bienvenido a la aventura!")
saludar() # esto la ejecuta (la «llama»)
saludar() # puedes llamarla las veces que quieras
Funciones con parámetros (datos de entrada)
Puedes pasarle datos a la función para que trabaje con ellos. Esos datos van entre los paréntesis y se llaman parámetros:
def saludar(nombre):
print(f"¡Bienvenido, {nombre}!")
saludar("Link")
saludar("Zelda")
Funciones que devuelven un resultado: return
A veces no quieres que la función imprima, sino que te devuelva un valor para usarlo después. Para eso está return:
def calcular_dano(ataque, defensa):
dano = ataque - defensa
return dano
resultado = calcular_dano(50, 20)
print(f"Has hecho {resultado} de daño.")
Ejemplo completo
def ataque_completo(nombre, ataque, defensa_enemigo):
dano = ataque - defensa_enemigo
print(f"{nombre} ataca y hace {dano} de daño.")
return dano
dano_total = ataque_completo("Link", 60, 25)