Decorator ist ein objektorientiertes Entwurfsmuster, mit dem vorhandene Klassen dynamisch verhalten werden können. Es ist eines der strukturellen Entwurfsmuster der Gang of Four.
Wie kann ich in Python zwei Dekorateure erstellen, die Folgendes tun? @makebold @makeitalic def say(): return "Hello" ... was zurückkehren sollte: "<b><i>Hello</i></b>" Ich versuche nicht, HTMLdies in einer realen Anwendung zu tun - ich versuche nur zu verstehen, wie Dekorateure und Dekorationsketten funktionieren.
Ich würde gerne verstehen, wie die eingebaute Funktion ist property funktioniert. Was mich verwirrt ist, dass propertyes auch als Dekorateur verwendet werden kann, aber es braucht nur Argumente, wenn es als eingebaute Funktion verwendet wird und nicht, wenn es als Dekorateur verwendet wird. Dieses Beispiel stammt aus der Dokumentation : …
Diese Frage dient nicht der Diskussion, ob das Singleton-Entwurfsmuster wünschenswert ist, ein Anti-Muster ist oder für irgendwelche Religionskriege, sondern um zu diskutieren, wie dieses Muster in Python am besten auf eine Weise implementiert werden kann, die am pythonischsten ist. In diesem Fall definiere ich "am pythonischsten" so, dass es dem …
In einem Kommentar zu dieser Antwort auf eine andere Frage sagte jemand, dass er nicht sicher sei, was er functools.wrapstue. Ich stelle diese Frage, damit sie in StackOverflow aufgezeichnet wird, damit Sie später darauf zurückgreifen können: Was functools.wrapsgenau macht das?
Ich habe mir das Proxy-Muster angesehen, und für mich scheint es den Mustern Decorator, Adapter und Bridge sehr ähnlich zu sein. Verstehe ich etwas falsch? Was ist der Unterschied? Warum sollte ich das Proxy-Muster im Vergleich zu den anderen verwenden? Wie haben Sie sie in der Vergangenheit in realen Projekten …
Ich habe ein Problem mit der Übertragung der Variablen 'insurance_mode' durch den Dekorateur. Ich würde es mit der folgenden Dekorateuraussage tun: @execute_complete_reservation(True) def test_booking_gta_object(self): self.test_select_gta_object() aber leider funktioniert diese Aussage nicht. Vielleicht gibt es einen besseren Weg, um dieses Problem zu lösen. 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 …
Geschlossen. Diese Frage entspricht nicht den Richtlinien für Stapelüberlauf . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage so dass es beim Thema für Stack - Überlauf. Geschlossen vor 6 Jahren . Während ich mich gerne als einigermaßen kompetenten Python-Codierer betrachte, ist ein Aspekt …
Ich erhalte die Warnung ... Die experimentelle Unterstützung für Dekorateure ist eine Funktion, die sich in einer zukünftigen Version ändern kann. Setzen Sie die Option 'experimentalDecorators', um diese Warnung zu entfernen. ... obwohl meine compilerOptions in tsconfig.json die folgenden Einstellungen haben: "emitDecoratorMetadata": true, "experimentalDecorators": true, Was seltsam ist, ist, dass …
Angesichts der Python-Funktion: def a_method(arg1, arg2): pass Wie kann ich die Anzahl und Namen der Argumente extrahieren? Dh, da ich einen Verweis auf habe func, möchte ich, dass der func.[something]zurückkehrt ("arg1", "arg2"). Das Verwendungsszenario hierfür ist, dass ich einen Dekorator habe und die Methodenargumente in derselben Reihenfolge verwenden möchte, in …
Ich lerne Redux mit React und bin auf diesen Code gestoßen. Ich bin nicht sicher, ob es Redux- spezifisch ist oder nicht, aber ich habe das folgende Code-Snippet in einem der Beispiele gesehen. @connect((state) => { return { key: state.a.b }; }) Die Funktionalität von connectist zwar ziemlich einfach, aber …
TypeScript 1.5 hat jetzt Dekoratoren . Könnte jemand ein einfaches Beispiel liefern, das die richtige Art der Implementierung eines Dekorateurs demonstriert und beschreibt, was die Argumente in den möglichen gültigen Dekorationssignaturen bedeuten? declare type ClassDecorator = <TFunction extends Function>(target: TFunction) => TFunction | void; declare type PropertyDecorator = (target: Object, …
Ich habe das Dekorationsmuster studiert, wie es in GOF dokumentiert ist . Bitte helfen Sie mir, das Dekorationsmuster zu verstehen . Könnte jemand ein Anwendungsbeispiel geben, wo dies in der realen Welt nützlich ist?
Wenn ich versuche, eine statische Methode aus dem Hauptteil der Klasse heraus zu verwenden und die statische Methode mithilfe der integrierten staticmethodFunktion als Dekorator wie folgt zu definieren: class Klass(object): @staticmethod # use as decorator def _stat_func(): return 42 _ANS = _stat_func() # call the staticmethod def method(self): ret = …
Folgendes berücksichtigen: @property def name(self): if not hasattr(self, '_name'): # expensive calculation self._name = 1 + 1 return self._name Ich bin neu, aber ich denke, das Caching könnte in einen Dekorateur zerlegt werden. Nur habe ich so etwas nicht gefunden;) PS: Die tatsächliche Berechnung hängt nicht von veränderlichen Werten ab
Ich spiele also mit Dekorateuren in Python 2.6 und habe Probleme, sie zum Laufen zu bringen. Hier ist meine Klassendatei: class testDec: @property def x(self): print 'called getter' return self._x @x.setter def x(self, value): print 'called setter' self._x = value Ich dachte, dies würde bedeuten, xwie eine Eigenschaft zu behandeln …
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.