Heim  >  Artikel  >  Backend-Entwicklung  >  Wie können Sie Funktionen in Python mithilfe von Wörterbüchern und Listen speichern und ausführen?

Wie können Sie Funktionen in Python mithilfe von Wörterbüchern und Listen speichern und ausführen?

Barbara Streisand
Barbara StreisandOriginal
2024-10-31 22:40:28265Durchsuche

How can you store and execute functions in Python using dictionaries and lists?

Funktionen in Python speichern und auslösen

Um unhandliche Def-Anweisungen zu vermeiden und die Verwaltung mehrerer Funktionen zu erleichtern, untersuchen wir eine Methode zum Speichern von Funktionen in Datenstrukturen und ermöglicht deren Ausführung bei Indizierung oder Schlüsselung.

Verwendung eines Wörterbuchs für den Funktionsversand

Funktionen sind erstklassige Objekte in Python, sodass sie gespeichert werden können und mithilfe von Wörterbüchern versandt. Betrachten Sie das folgende Beispiel:

<code class="python">dispatcher = {'foo': foo, 'bar': bar}</code>

In diesem Wörterbuch sind foo und bar Funktionsobjekte, keine aufrufbaren Instanzen (z. B. foo() oder bar()). Um foo aufzurufen, verwenden Sie:

<code class="python">dispatcher['foo']()</code>

Mehrere Funktionen in einer Liste speichern

Wenn Sie mehrere in einer Liste gruppierte Funktionen ausführen möchten, ist ein möglicher Ansatz:

<code class="python">dispatcher = {'foobar': [foo, bar], 'bazcat': [baz, cat]}

def fire_all(func_list):
    for f in func_list:
        f()

fire_all(dispatcher['foobar'])</code>

In diesem Fall ist die Taste „foobar“ einer Liste von Funktionen zugeordnet. Die Funktion „fire_all“ durchläuft die Liste und führt jede Funktion aus.

Das obige ist der detaillierte Inhalt vonWie können Sie Funktionen in Python mithilfe von Wörterbüchern und Listen speichern und ausführen?. 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