Esta genial la clase. Pero me asalta una duda: En el zen de Python dice que no se debe hacer codigo complicado. No se si me estoy adelant...

Pregunta de la clase:
Programando closures
Carlos José González Juan

Carlos José González Juan

Pregunta
studenthace 4 años

Esta genial la clase. Pero me asalta una duda: En el zen de Python dice que no se debe hacer codigo complicado. No se si me estoy adelantando a otras cosas, y se que este es un ejemplo… pero no entiendo muy bien para que usar estas funciones cuando con una sola funcion puedes hacerlo mas claro:

**#la funcion de la clase** > def repetidor (n): def repite(string): return string*n return repite repetido= repetidor (5) print (repetido('hola')) **#mi funcion** > def repetir (n, string): return string*n print (repetir(5,'hola'))
3 respuestas
para escribir tu comentario
    Cesar Hernández Ramírez

    Cesar Hernández Ramírez

    studenthace 4 años

    Ni yo le encuentro sentido todavía a utilizar closures. Me parece más una técnica muy buena de encapsulamiento. Al traernos todas esas variables de manera oculta a la función anidada, no se pueden modificar de ninguna manera desde nuestra función anidada.

    Carlos Damián Loaiza Artunduaga

    Carlos Damián Loaiza Artunduaga

    studenthace 4 años

    Hola Carlos, es cierto lo que dices en el sentido de usar decoradores en estos ejemplos ya que no hacen gran cosa, sin embargo es para explicar el funcionamiento de los closures en los programas hechos con Python ya que muchísimas librerías y frameworks de este lenguaje utilizan los closures y decoradores para sus procesos y por eso es importante entender como funcionan.

    Un saludo :D

    Axel Yaguana

    Axel Yaguana

    Team Platzihace 4 años

    Hola, Carlos.

    Sí, de hecho en cualquier leguaje siempre es buena práctica mantener código sencillo. Lo que muestras creo que es un ejemplo para entender cómo usar una función dentro de otra función.

    Por otra parte, a mi parecer el código que escribiste tú está más simplificado. 👍🏽

    Recuerda que en programación no hay una única solución. Puedes escribir código de distintas formas para resolver el mismo problema.

Curso Profesional de Python

Curso Profesional de Python

Culmina tu aprendizaje sobre este vasto lenguaje de programación. Domina los conceptos que te llevarán a las condiciones necesarias para iniciar tu camino en la carrera de la industria tecnológica que prefieras: Backend, Ciencia de Datos, Inteligencia Artificial.

Curso Profesional de Python

Curso Profesional de Python

Culmina tu aprendizaje sobre este vasto lenguaje de programación. Domina los conceptos que te llevarán a las condiciones necesarias para iniciar tu camino en la carrera de la industria tecnológica que prefieras: Backend, Ciencia de Datos, Inteligencia Artificial.