Heim  >  Artikel  >  Backend-Entwicklung  >  So rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf

So rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf

silencement
silencementOriginal
2019-05-25 13:50:255762Durchsuche

So rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf

Durchläuft die Funktionen in der Ausführungsliste, aber der aus der Liste erhaltene Funktionsname ist eine Zeichenfolge, sodass ein Typfehler angezeigt wird und das Zeichenfolgenobjekt nicht aufgerufen werden kann. Was wäre, wenn wir möchten, dass der String zu einem aufrufbaren Objekt wird? Oder möchten Sie Modulattribute und Klassenattribute über Variablen aufrufen? Es gibt drei Möglichkeiten,

1 zu erreichen eval() wird normalerweise verwendet, um einen Zeichenfolgenausdruck auszuführen und den Wert des Ausdrucks zurückzugeben. Hier wandelt es den String in die entsprechende Funktion um. eval() ist mächtig, aber gefährlich (eval ist böse) und wird nicht empfohlen.

So rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf2. Locals() und Globals()

locals() und globals() sind zwei integrierte Funktionen von Python, über die Sie auf lokale und globale Variablen in einem Wörterbuch zugreifen können.

So rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf3. getattr()

getattr() ist eine integrierte Funktion von Python, getattr(object,name) ist äquivalent zu object.name, aber hier kann name eine Variable sein.

Gibt die bar-Methode des foo-Moduls zurück

Gibt die Eigenschaften der Foo-Klasse zurück

Die Methodenaufruferfunktion unter dem Standardbibliotheksoperator

So rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf

Das obige ist der detaillierte Inhalt vonSo rufen Sie diese Funktion über die Zeichenfolge des Funktionsnamens in Python auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:So geben Sie auf stderr ausNächster Artikel:So geben Sie auf stderr aus