Articles of decorador de

¿Cuál es la vida útil prevista de un decorador de Python?

Mi pregunta gira en torno a la vida útil prevista de un decorador de Python implementado. Desde realpython.org dice: “Por definición, un decorador es una función que toma otra función y extiende el comportamiento de la última función sin modificarla explícitamente”. Para mí, parece que los decoradores se usan con bastante frecuencia en los ejemplos […]

Heredando de las clases decoradas.

Estoy tratando de decorar una clase con otra clase. También quiero heredar de la clase decorada, pero recibo algunos errores. Aquí está mi código: class Decorator: def __init__(self, decorated): pass @Decorator class Foo: pass class Goo(Foo): pass El error que recibo cuando bash crear una subclase de Foo es este: Rastreo (llamadas recientes más última): […]

¿Por qué ocurre una recursión aquí?

Recientemente leí una interesante discusión sobre cómo hacer un singleton en Python . Una de las soluciones fue un decorador complicado que define una clase dentro de su código como un sustituto de la clase decorada : def singleton(class_): class class_w(class_): _instance = None def __new__(class2, *args, **kwargs): if class_w._instance is None: class_w._instance = super(class_w, […]

Implementar métodos decoradores en C #.

En python es posible implementar function decorators para ampliar el comportamiento de las funciones y métodos. En particular, estoy migrando una lib del dispositivo de python a C# . La comunicación con el dispositivo puede generar errores que deberían volver a actualizarse con una excepción personalizada. En python escribiría así: @device_error_wrapper(“Device A”, “Error while setting […]

Los decoradores de Python en los miembros de la clase fallan cuando el mecanismo del decorador es una clase

Al crear decoradores para usar en métodos de clase, tengo problemas cuando el mecanismo de decorador es una clase en lugar de una función / cierre. Cuando se usa la forma de clase, mi decorador no es tratado como un método encuadernado. Generalmente prefiero usar la forma de función para decoradores, pero en este caso […]

Python: ¿puedo decorar mediante progtwigción los métodos de clase desde una instancia de clase?

Tengo una jerarquía de objetos en la que casi todos los métodos son métodos de clase. Se parece a lo siguiente: class ParentObject(object): def __init__(self): pass @classmethod def smile_warmly(cls, the_method): def wrapper(kls, *args, **kwargs): print “-smile_warmly – “+kls.__name__ the_method(*args, **kwargs) return wrapper @classmethod def greetings(cls): print “greetings” class SonObject(ParentObject): @classmethod def hello_son(cls): print “hello son” […]

¿Cómo puede un decorador matraz tener argumentos?

Implementé un decorador de la misma manera que aquí Cómo hacer que un decorador de python funcione en Flask con argumentos (para la autorización) pero el problema sigue sin resolverse … Tengo esta función con decoradores. @blueprint.route(”) @blueprint.my_decorator(var) def function(var): do stuff y me sale este error NameError: global name ‘var’ is not defined ¿Cómo […]

Decoradores dynamics de Python: ¿por qué tantas envolturas?

Así que todavía soy algo nuevo para los decoradores de Python: los he usado antes, pero nunca he hecho los míos. Estoy leyendo este tutorial (ese párrafo en particular) y parece que no entiendo, ¿por qué necesitamos tres niveles de funciones? ¿Por qué no podemos hacer algo como esto? def decorator(func, *args, **kwargs): return func(*args,**kwargs) […]

conseguir esfinge para reconocer la firma correcta

He estado tratando de obtener mi documentación para un proyecto de código abierto en el que estoy trabajando, lo que implica un cliente duplicado y una API de servidor. Con este fin, he creado un decorador que puede utilizarse la mayor parte del tiempo para documentar un método que simplemente realiza la validación en su […]

Usando la propiedad Python () dentro de un método

Suponiendo que conoce la propiedad incorporada de Python: http://docs.python.org/library/functions.html#property Quiero restablecer una propiedad de objeto de esta manera pero, necesito hacerlo dentro de un método para poder pasarle algunos argumentos, actualmente todos los ejemplos web de propiedad () están definiendo la propiedad fuera de los métodos, y intentando lo obvio … def alpha(self, beta): self.x […]