Zugriff auf Funktionsnamen aus Funktionen heraus
In Python kann die Bestimmung des Namens einer Funktion aus der Funktion selbst heraus in Situationen nützlich sein, in denen eine dynamische Selbstbeobachtung erforderlich ist ist erforderlich.
Das Inspektionsmodul bietet einen praktischen Mechanismus zum Abrufen von Informationen über den Code eines laufenden Programms. Mit inspect.stack() können wir auf eine Liste von Frames zugreifen, die den aktuellen Aufrufstapel darstellen.
Für eine bestimmte Funktion entspricht der erste Frame in der Stack-Liste der aktuellen Funktion, während der zweite Frame diese darstellt Anrufer. Um auf den Funktionsnamen zuzugreifen, können wir das dritte Element des ersten Frames im Stapel mit inspect.stack()0 extrahieren.
Hier ist ein Beispiel:
import inspect
def foo():
print("my name is", inspect.stack()[0][3])
foo()
Dieser Code wird gedruckt:
my name is foo ````
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3