Pytania otagowane jako decorator

Dekorator to obiektowy wzorzec projektowy, który umożliwia dynamiczne dodawanie zachowań do istniejących klas. Jest to jeden z wzorców projektowania strukturalnego Gang of Four.

17
Jak zrobić łańcuch dekoratorów funkcji?
Jak mogę zrobić dwa dekoratory w Pythonie, które wykonałyby następujące czynności? @makebold @makeitalic def say(): return "Hello" ... które powinny zwrócić: "<b><i>Hello</i></b>" Nie próbuję HTMLtego zrobić w prawdziwej aplikacji - po prostu próbuję zrozumieć, jak działają dekoratorzy i łączenie dekoratorów.

14
Jak działa dekorator @property?
Chciałbym zrozumieć, jak propertydziała funkcja wbudowana . To, co mnie dezorientuje, to fakt, że propertymożna go również używać jako dekoratora, ale wymaga tylko argumentów, gdy jest używany jako funkcja wbudowana, a nie jako dekorator. Ten przykład pochodzi z dokumentacji : class C(object): def __init__(self): self._x = None def getx(self): return …

22
Tworzenie singletona w Pythonie
To pytanie nie dotyczy dyskusji, czy pożądany jest wzór singletonu , jest anty-wzorem, czy jakiejkolwiek wojny religijnej, ale do omówienia, w jaki sposób ten wzór najlepiej wdrożyć w Pythonie w najbardziej pythonowy sposób. W tym przypadku definiuję słowo „najbardziej python”, co oznacza, że ​​jest ono zgodne z „zasadą najmniejszego zdziwienia” …

6
Do czego służy funkools.wraps?
W komentarzu do tej odpowiedzi na inne pytanie ktoś powiedział, że nie jest pewien, co się functools.wrapsdzieje. Zadaję więc to pytanie, aby na StackOverflow zapisano go na przyszłość: co functools.wrapsdokładnie robi ?


13
Dekoratorzy z parametrami?
Mam problem z przeniesieniem zmiennej „Insurance_mode” przez dekoratora. Zrobiłbym to przez następujące oświadczenie dekoratora: @execute_complete_reservation(True) def test_booking_gta_object(self): self.test_select_gta_object() ale niestety to stwierdzenie nie działa. Być może istnieje lepszy sposób na rozwiązanie tego problemu. def execute_complete_reservation(test_case,insurance_mode): def inner_function(self,*args,**kwargs): self.test_create_qsf_query() test_case(self,*args,**kwargs) self.test_select_room_option() if insurance_mode: self.test_accept_insurance_crosseling() else: self.test_decline_insurance_crosseling() self.test_configure_pax_details() self.test_configure_payer_details return inner_function
401 python  decorator 

13
Jakie są typowe zastosowania dekoratorów Python? [Zamknięte]
Zamknięte. To pytanie nie jest zgodne z wytycznymi dotyczącymi przepełnienia stosu . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było na temat przepełnienia stosu. Zamknięte 6 lat temu . Popraw to pytanie Chociaż lubię myśleć o sobie jako o dość kompetentnym kodzie Pythona, jednym z aspektów …
337 python  decorator 

28
Ostrzeżenie dotyczące eksperymentalnych dekoratorów w kompilacji TypeScript
Otrzymuję ostrzeżenie ... Eksperymentalne wsparcie dla dekoratorów to funkcja, która może ulec zmianie w przyszłej wersji. Ustaw opcję „experimentalDecorators”, aby usunąć to ostrzeżenie. ... mimo że moje compilerOptions w tsconfig.json mają następujące ustawienia: "emitDecoratorMetadata": true, "experimentalDecorators": true, Dziwne jest to, że niektóre losowe klasy, które używają dekoratorów, nie pokazują tego …

15
Jak uzyskać nazwy parametrów metody?
Biorąc pod uwagę funkcję Python: def a_method(arg1, arg2): pass Jak mogę wyodrębnić liczbę i nazwy argumentów. To znaczy, biorąc pod uwagę, że mam odniesienie func, chcę func.[something]wrócić ("arg1", "arg2"). Scenariusz użycia jest taki, że mam dekorator i chcę użyć argumentów metody w tej samej kolejności, w jakiej pojawiają się dla …

2
Co to jest „@” (symbol) w dekoratorze Redux @connect?
Uczę się Redux z React i natknąłem się na ten kod. Nie jestem pewien, czy jest on specyficzny dla Redux, czy nie, ale widziałem następujący fragment kodu w jednym z przykładów. @connect((state) => { return { key: state.a.b }; }) Chociaż funkcjonalność connectjest dość prosta, ale nie rozumiem @wcześniej connect. …

3
Jak zaimplementować dekorator maszynopisów?
TypeScript 1.5 ma teraz dekoratory . Czy ktoś mógłby podać prosty przykład pokazujący właściwy sposób implementacji dekoratora i opisać, co oznaczają argumenty w możliwych prawidłowych podpisach dekoratora? declare type ClassDecorator = <TFunction extends Function>(target: TFunction) => TFunction | void; declare type PropertyDecorator = (target: Object, propertyKey: string | symbol) => …


5
Wywołanie metody statycznej klasy w treści klasy?
Kiedy próbuję użyć metody statycznej z treści klasy i zdefiniować metodę statyczną za pomocą funkcji wbudowanej staticmethodjako dekoratora, na przykład: class Klass(object): @staticmethod # use as decorator def _stat_func(): return 42 _ANS = _stat_func() # call the staticmethod def method(self): ret = Klass._stat_func() + Klass._ANS return ret Otrzymuję następujący błąd: …


4
Dlaczego @ foo.setter w Pythonie nie działa dla mnie?
Więc bawię się dekoratorami w Pythonie 2.6 i mam problemy z ich uruchomieniem. Oto plik mojej klasy: class testDec: @property def x(self): print 'called getter' return self._x @x.setter def x(self, value): print 'called setter' self._x = value Pomyślałem, że oznaczało to traktowanie xjak właściwość, ale wywołanie tych funkcji podczas pobierania …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.