Ich bin neu in Python, so dass dies wahrscheinlich eine einfache Scoping-Frage ist. Der folgende Code in einer Python-Datei (Modul) verwirrt mich etwas:
if __name__ == '__main__':
x = 1
print x
In anderen Sprachen, in denen ich gearbeitet habe, würde dieser Code eine Ausnahme auslösen, da die x
ist eine lokale Variable in der if
Anweisung und sollte nicht außerhalb von ihr existieren. Aber dieser Code wird ausgeführt und gibt 1 aus. Kann jemand dieses Verhalten erklären? Sind alle Variablen, die in einem Modul erstellt werden, global/für das gesamte Modul verfügbar?