
Loren Johanna Vásquez Rivera
PreguntaNo entiendo cómo funciona esto: def protected(func): Se escribe func, pero no está definida en ninguna parte.

Loren Johanna Vásquez Rivera
Muchas gracias por tu explicación, Gabriel :)

Gabriel De Andrade
Hola! func es un argumento que recibe la función, no están declarados porque los vas a enviar a la función cuando la llames, imagina que func es un apodo a una propiedad que le estás enviando a la función cuando la llamas para que haga su trabajo. Por ejemplo:
def print_name(name): print('Hello ' + name) print_name('Gabriel') # Y lo que imprimiría es Hello Gabriel
Sin embargo en este caso la diferencia es que la función en vez de recibir un String con un nombre, recibe una función, para poderla ejecutar dentro de la otra función. Sé que suena un poco confuso al inicio, pero con la práctica lo vas entendiendo, de hecho hay todo un paradigma de programación basado en este concepto llamado programación funcional :P