Comment puis-je créer deux décorateurs en Python qui feraient ce qui suit? @makebold @makeitalic def say(): return "Hello" ... qui devrait retourner: "<b><i>Hello</i></b>" Je n'essaye pas de faire de HTMLcette façon dans une vraie application - j'essaie juste de comprendre comment les décorateurs et le chaînage des décorateurs fonctionnent.
Je voudrais comprendre comment fonctionne la propertyfonction intégrée . Ce qui m'embrouille, c'est qu'il propertypeut également être utilisé comme décorateur, mais il ne prend des arguments que lorsqu'il est utilisé comme fonction intégrée et non lorsqu'il est utilisé comme décorateur. Cet exemple provient de la documentation : class C(object): def …
Je regarde du code Python qui a utilisé le @symbole, mais je n'ai aucune idée de ce qu'il fait. Je ne sais pas non plus quoi rechercher car la recherche de documents Python ou Google ne renvoie pas de résultats pertinents lorsque le @symbole est inclus.
Je vois des modèles comme def __init__(self, x, y, z): ... self.x = x self.y = y self.z = z ... assez fréquemment, souvent avec beaucoup plus de paramètres. Existe-t-il un bon moyen d'éviter ce type de répétition fastidieuse? La classe devrait-elle hériter à la namedtupleplace?
Comment passer un champ de classe à un décorateur sur une méthode de classe en tant qu'argument? Ce que je veux faire, c'est quelque chose comme: class Client(object): def __init__(self, url): self.url = url @check_authorization("some_attr", self.url) def get(self): do_work() Il se plaint que le moi n'existe pas pour passer self.urlau …
Je suis intéressé par la façon de l'utiliser @propertyen Python. J'ai lu la documentation python et l'exemple là-bas, à mon avis, n'est qu'un code jouet: class C(object): def __init__(self): self._x = None @property def x(self): """I'm the 'x' property.""" return self._x @x.setter def x(self, value): self._x = value @x.deleter def …
J'ai un décorateur comme ci-dessous. def myDecorator(test_func): return callSomeWrapper(test_func) def callSomeWrapper(test_func): return test_func @myDecorator def someFunc(): print 'hello' Je souhaite valoriser ce décorateur pour accepter un autre argument comme ci-dessous def myDecorator(test_func,logIt): if logIt: print "Calling Function: " + test_func.__name__ return callSomeWrapper(test_func) @myDecorator(False) def someFunc(): print 'Hello' Mais ce code …
Je voudrais savoir s'il est possible de contrôler la définition de la fonction Python en fonction des paramètres globaux (par exemple OS). Exemple: @linux def my_callback(*args, **kwargs): print("Doing something @ Linux") return @windows def my_callback(*args, **kwargs): print("Doing something @ Windows") return Ensuite, si quelqu'un utilise Linux, la première définition de …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.