Domande taggate «python-decorators»


17
Come creare una catena di decoratori di funzioni?
Come posso creare due decoratori in Python per fare quanto segue? @makebold @makeitalic def say(): return "Hello" ... che dovrebbe restituire: "<b><i>Hello</i></b>" Non sto cercando di farlo HTMLin una vera applicazione, sto solo cercando di capire come funzionano i decoratori e il concatenamento dei decoratori.




5
Decoratore di metodi di classe con argomenti autonomi?
Come faccio a passare un campo di classe a un decoratore su un metodo di classe come argomento? Quello che voglio fare è qualcosa di simile: class Client(object): def __init__(self, url): self.url = url @check_authorization("some_attr", self.url) def get(self): do_work() Si lamenta che il sé non esiste per il passaggio self.urlal …


1
Ordine di esecuzione del decoratore
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() Produzione: "<b><i>hello world</i></b>" Capisco approssimativamente i decoratori e come funziona con uno di essi nella maggior parte degli esempi. In …

5
Come bypassare la definizione della funzione Python con Decorator?
Vorrei sapere se è possibile controllare la definizione della funzione Python in base alle impostazioni globali (ad es. OS). Esempio: @linux def my_callback(*args, **kwargs): print("Doing something @ Linux") return @windows def my_callback(*args, **kwargs): print("Doing something @ Windows") return Quindi, se qualcuno sta usando Linux, verrà utilizzata la prima definizione di …
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.