Ich bin verwirrt über den Umfang der Python-Variablen. Wie wird diese ArbeitUmfang der Python-Variablen in diesem Fall - Unterschied zwischen umschließenden und lokalen Variablen
Betrachten Sie das folgende Beispiel
i = 12
if i==12 :
str = "is equal"
else:
str = "NOT"
print str //Prints is equal - recognized the string str
Die Variable str
ist nur im Rahmen der if-Anweisung und deren Umfang an der else-Anweisung verloren. Da gibt es kein Hochziehen in Python. Ich bin verwirrt, wie dieses Beispiel this Post lesen works.I und es heißt, dass Variablen in der folgenden Reihenfolge
1-L (lokale Variablen werden bevorzugt)
2-E (Enclosing Variablen) scoped sind
3-G (globale Variablen)
4-B (Builtin)
Meine Frage ist, was ist der Unterschied zwischen umschließender Variable und lokaler Variable?
Danke für das Aufräumen - als Antwort markiert –