¿Cuál es la diferencia entre una función decorada @staticmethody una decorada con
¿Cuál es la diferencia entre una función decorada @staticmethody una decorada con
¿Cómo puedo hacer dos decoradores en Python que hagan lo siguiente? @makebold @makeitalic def say(): return "Hello" ... que debería volver: "<b><i>Hello</i></b>" No estoy tratando de hacerlo de HTMLesta manera en una aplicación real, solo estoy tratando de entender cómo...
Me gustaría entender cómo funciona la función incorporada property. Lo que me confunde es queproperty también se puede usar como decorador, pero solo toma argumentos cuando se usa como una función incorporada y no cuando se usa como decorador. Este ejemplo es de la documentación : class...
Estoy viendo un código de Python que usó el @símbolo, pero no tengo idea de lo que hace. Tampoco sé qué buscar, ya que buscar documentos de Python o Google no devuelve resultados relevantes cuando @se incluye el
Veo patrones como def __init__(self, x, y, z): ... self.x = x self.y = y self.z = z ... con bastante frecuencia, a menudo con muchos más parámetros. ¿Hay una buena manera de evitar este tipo de repetitividad tediosa? ¿Debería la clase heredar de su
¿Cómo paso un campo de clase a un decorador en un método de clase como argumento? Lo que quiero hacer es algo como: class Client(object): def __init__(self, url): self.url = url @check_authorization("some_attr", self.url) def get(self): do_work() Se queja de que el yo no existe para pasar...
Estoy interesado en cómo usarlo @propertyen Python. He leído los documentos de Python y el ejemplo allí, en mi opinión, es solo un código de juguete: class C(object): def __init__(self): self._x = None @property def x(self): """I'm the 'x' property.""" return self._x @x.setter def...
Tengo un decorador como el de abajo. def myDecorator(test_func): return callSomeWrapper(test_func) def callSomeWrapper(test_func): return test_func @myDecorator def someFunc(): print 'hello' Quiero mejorar este decorador para aceptar otro argumento como el siguiente def
def make_bold(fn): return lambda : "<b>" + fn() + "</b>" def make_italic(fn): return lambda : "<i>" + fn() + "</i>" @make_bold @make_italic def hello(): return "hello world" helloHTML = hello() Salida: "<b><i>hello world</i></b>" Entiendo...
Me gustaría saber si es posible controlar la definición de la función Python en función de la configuración global (por ejemplo, SO). Ejemplo: @linux def my_callback(*args, **kwargs): print("Doing something @ Linux") return @windows def my_callback(*args, **kwargs): print("Doing something @...