Ich habe eine Frage bezüglich Globals() in PythonGlobals() Anwendungsbereich innerhalb einer Funktion
Mein Beispielcode
b=9
def a1():
'kkk'
a1()
print globals()
Ich habe Ausgabe b als globale
Da b global ist, ich erwarte ich es überall ändern So modifizierte ich meinen Code zu
b=9
def a1():
'kkk'
b=100
a1()
print globals()
immer noch meine globals() sagt b wie 100. Warum b innerhalb der Funktion wird als lokaler Wert genommen, während meine globals() sagt seine globale?
Hinweis: Wenn ich das Schlüsselwort global b innerhalb der Funktion hinzufüge, wird es in global konvertiert. Meine Frage ist, warum b innerhalb der Funktion nicht geändert wurde, während globals() b als global deklarierte?
Ihre Frage ist nicht direkt über diesen Fehler, aber es ist effektiv das gleiche: Warum ist eine Variable in einer Funktion lokal zugeordnet? –