Unico video donde entendi decoradores claramente, gracias
3 ปีที่แล้ว
Gracias esto me aclara mucho, ya que en otros tutoriales solo dicen que te ayuda a imprimir antes y despues, o dicen que para abrir DB y cerrar, pero no lo muestran.
Hola he hecho tú ejemplo con decorador, pero n funciona. No muestra el resultado. Si pasa (10,0), te muestra el mensajae de error. Pero si pasas (10,5), siempre muestra 'None'
Así resolví ese problema: def revisar(func): def otra_funcion(a,b): if b == 0: return "No puedes dividir entre cero" return func(a,b) return otra_funcion @revisar def dividir(a,b): return a / b print(dividir(10,2))
Hola, pero cuando se hace el return en la función división, no saldría primero el error antes de que se ejecute el decorador? Debido a que ese return impidiria que la ejecución del programa vaya a la función revisar.
Este ejemplo, para que quede mas claro, valida si los números introducidos son enteros o reales (ojo, si empleo mal las excepciones, me corrigen): a = input("Ingrese un primer número: ") b = input("Ingrese un segundo número: ") def validarNumeros(func): def validar_num(a,b): try: a = int(a) b = int(b) except: a = float(a) b = float(b) finally: return func(a,b) return validar_num @validarNumeros def sumar(a,b): return a+b print(sumar(a,b))
todo iba bien, pero al final en que creaste la variable con el mismo nombre de la función división pues ya no pude comprender la relación que hay entre el decorador Revisar y el print del final. puede alguien aclararme la duda?
La variable tiene que llevar el mismo nombre de la función división para poder funcionar, es algo muy contraintuitivo, es por eso que decoradores causa mucho conflicto.
@@edwin5907 Una disculpa si no hago un buen trabajo explicando las cosas, intento hacer lo mejor que puedo, tratando de mejorar con cada video tutorial que subo. un saludo y mucha suerte amigo.
@@MundoPython Al contrario, la explicación del tema y como funciona esta muy bien.. quizá detallitos para terminar de cubrir algunos punto clave, pero pues con las dudas de las personas se va mejorando igual en tomar mas consideraciones. Gracias nuevamente. Haz ganado nuevo follower en insta.
Gracias pase por tres diferentes explicaciones y en ninguna logre comprender el concepto eres un crack gracias
Unico video donde entendi decoradores claramente, gracias
Gracias esto me aclara mucho, ya que en otros tutoriales solo dicen que te ayuda a imprimir antes y despues, o dicen que para abrir DB y cerrar, pero no lo muestran.
Gracias, me dormí en mi clase de decoradores y ahora ya estoy al día
Jajajaja se supone esas son las importantes bro, pero que bueno que te funcionó, un saludo.
Excelente explicación, muy sencilla e instructiva.
i realize it's kinda off topic but does anybody know a good website to stream newly released series online?
@Johnathan Reuben flixportal :)
@Jayson Fisher Thanks, I went there and it seems to work =) I really appreciate it!!
@Johnathan Reuben Glad I could help xD
Plis más videos como estos. Gracias 👌
amigo muchas gracias
Buen video solo un detalle, el return de la funcion interna debe devolver el llamado de la funcion pasada como parametro
graaaaaaacias bro :D
Graciasssssss
Sencillo y bien explicado
Gracias ;)
Hola
he hecho tú ejemplo con decorador, pero n funciona. No muestra el resultado.
Si pasa (10,0), te muestra el mensajae de error.
Pero si pasas (10,5), siempre muestra 'None'
Así resolví ese problema:
def revisar(func):
def otra_funcion(a,b):
if b == 0:
return "No puedes dividir entre cero"
return func(a,b)
return otra_funcion
@revisar
def dividir(a,b):
return a / b
print(dividir(10,2))
Muchas graciasss se entendio perfecto
Gracias a ti :)
Hola, pero cuando se hace el return en la función división, no saldría primero el error antes de que se ejecute el decorador? Debido a que ese return impidiria que la ejecución del programa vaya a la función revisar.
ok, gracias bro.
Gracias =)
Este ejemplo, para que quede mas claro, valida si los números introducidos son enteros o reales (ojo, si empleo mal las excepciones, me corrigen):
a = input("Ingrese un primer número: ")
b = input("Ingrese un segundo número: ")
def validarNumeros(func):
def validar_num(a,b):
try:
a = int(a)
b = int(b)
except:
a = float(a)
b = float(b)
finally:
return func(a,b)
return validar_num
@validarNumeros
def sumar(a,b):
return a+b
print(sumar(a,b))
porque no lo explicas mas dificil, se que puedes
todo iba bien, pero al final en que creaste la variable con el mismo nombre de la función división pues ya no pude comprender la relación que hay entre el decorador Revisar y el print del final.
puede alguien aclararme la duda?
La variable tiene que llevar el mismo nombre de la función división para poder funcionar, es algo muy contraintuitivo, es por eso que decoradores causa mucho conflicto.
@@MundoPython peeeerfeectooo!! Ahora si ya quedó. No tenia idea de ese detalle, muchas gracias.
@@edwin5907 Una disculpa si no hago un buen trabajo explicando las cosas, intento hacer lo mejor que puedo, tratando de mejorar con cada video tutorial que subo. un saludo y mucha suerte amigo.
@@MundoPython Al contrario, la explicación del tema y como funciona esta muy bien..
quizá detallitos para terminar de cubrir algunos punto clave, pero pues con las dudas de las personas se va mejorando igual en tomar mas consideraciones.
Gracias nuevamente. Haz ganado nuevo follower en insta.
Gracias jeje 😂