Ein Dekorator ist im Wesentlichen eine Python-Funktion, die es anderen Funktionen ermöglicht, zusätzliche Funktionen hinzuzufügen, ohne Codeänderungen vorzunehmen. Der folgende Artikel führt Sie hauptsächlich in die Verwendung von Dekoratorkaskaden in Python ein. Freunde in Not können sich darauf beziehen gemeinsam lernen.
Vorwort
Ich habe kürzlich Python gelernt und gelernt, warum man Dekoratoren verwendet, und ich verstehe auch, was Dekoratoren sind, aber Sie fragen sich vielleicht: Was passiert, wenn Sie vor den Dekoratoren eine weitere Schicht Dekorateure hinzufügen können? Wie bei einem Gebäude werden Schichten übereinander gestapelt. Tatsächlich ist es möglich. Lernen wir nun diese Stapeltechnologie kennen, die der Klassenvererbung ähnelt und kontinuierlich vererbt werden kann. Im Folgenden gibt es nicht viel zu sagen. Werfen wir einen Blick auf die ausführliche Einführung.
Der Code lautet wie folgt:
#python 3.6 def star(func): def inner(*args, **kwargs): print("*" * 30) func(*args, **kwargs) print("*" * 30) return inner def percent(func): def inner(*args, **kwargs): print("%" * 30) func(*args, **kwargs) print("%" * 30) return inner @star @percent def printer(msg): print(msg) printer("Hello")
Das Ergebnis Die Ausgabe lautet wie folgt:
****************************** %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Hello %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ******************************
In diesem Beispiel wird das Sternchen zuerst ausgegeben, dh der Dekoratorstern der ersten Ebene wird zuerst aufgerufen, und dann wird der Dekoratorprozentsatz der zweiten Ebene aufgerufen. Schließlich wird die Funktion Drucker aufgerufen.
Zusammenfassung
Das obige ist der detaillierte Inhalt vonBeispiel einer Decorator-Kaskade in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!