Führen Sie `del variable` aus, um globale Variablen innerhalb der Python -Funktion zu löschen?
Posted: 19 Feb 2025, 19:59
Ich versuche eine Funktion zu schreiben, die Variablen bei einer Liste von Zeichenfolgen dieser Variablennamen löscht. Ich versuche das: < /p>
Aber außer wird immer geworfen: Name 'var_name' ist nicht definiert , vermutlich, weil es außerhalb des SCOPE ist.
Aber warum ist das? Ich überlasse Globals () an exec () , sodass es Zugriff auf Variablen außerhalb des Funktionsbereichs hat.
Code: Select all
def delVars(ts):
for s in ts:
st = "del %s" % s
print(st)
try:
exec(st, globals(), locals())
except Exception as e:
print(e)
Aber warum ist das? Ich überlasse Globals () an exec () , sodass es Zugriff auf Variablen außerhalb des Funktionsbereichs hat.