Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Variablen in Python basierend auf String-Werten dynamisch erstellen?

Wie kann ich Variablen in Python basierend auf String-Werten dynamisch erstellen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-21 03:35:09538Durchsuche

How Can I Dynamically Create Variables in Python Based on String Values?

Variablensubstitution für Strings

Wenn Sie eine Variable basierend auf dem Wert eines Strings erstellen müssen, ist der typische Ansatz die Verwendung von Zuweisungen . Diese Technik wird jedoch problematisch, wenn Sie den ursprünglichen String-Wert neu zuweisen möchten.

Angenommen, Sie haben der Zeichenfolge „bar“ eine String-Variable foo zugewiesen. Um eine neue Variable basierend auf dem Wert von foo zu definieren, können Sie Folgendes versuchen:

foo = "bar"
foo = "something else"

Dieser Code löst einen Fehler aus, da Python den Wert von foo „etwas anderem“ zuweist, anstatt ihn zu erstellen eine neue Variable namens bar.

Dynamische Variablenerstellung mit exec()

Um das gewünschte Verhalten beim Erstellen zu erreichen Um eine neue Variable basierend auf einem String-Wert zu erstellen, können Sie die Funktion exec() verwenden. exec() führt Python-Code dynamisch aus, sodass Sie Variablen programmgesteuert erstellen können.

So verwenden Sie exec(), um eine Variable basierend auf einer Zeichenfolge zu erstellen:

foo = "bar"
exec(foo + " = 'something else'")
print(bar)  # Outputs "something else"

In diesem Beispiel exec() führt die Zeichenfolge bar = 'something else' aus und erstellt effektiv eine neue Variable namens bar mit dem Wert „something else“.

Diese Technik ist besonders nützlich, wenn Sie Sie müssen Variablen dynamisch basierend auf externen Eingaben generieren oder in Situationen, in denen die Variablennamen zur Kompilierungszeit unbekannt sind.

Das obige ist der detaillierte Inhalt vonWie kann ich Variablen in Python basierend auf String-Werten dynamisch erstellen?. 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