Eine Variable, die innerhalb einer Methode (z. B. main) erstellt wurde, ist per Definition lokal. Sie können jedoch eine globale Variable außerhalb der Methode erstellen und von einer anderen Methode aus auf den Wert zugreifen und ihn ändern.
Um seinen Wert zu ändern, verwenden Sie das Schlüsselwort global
.
Was Sie wollen, ist nicht möglich *. Sie können einfach eine Variable im globalen Namespace erstellen:
%Vor%Tue dies NICHT.
Der springende Punkt einer Funktion ist, dass sie Parameter benötigt. Fügen Sie einfach Parameter zu Ihren Funktionen hinzu. Wenn Sie feststellen, dass Sie viele Funktionen ändern müssen, ist dies ein Hinweis darauf, dass Sie sie in einer Klasse sammeln sollten.
*
Um zu erklären, warum das nicht möglich ist: Variablen in Python werden nicht deklariert - sie werden erzeugt, wenn eine Zuweisungsanweisung ausgeführt wird. Dies bedeutet, dass der folgende Code (abgeleitet von Code, der von astronautlevel gepostet wird) bricht:
Dies passiert, weil, wenn caketaste
aufgerufen wird, keine Zuweisung zu cake
stattgefunden hat. Es wird nur auftreten, nachdem setcake
aufgerufen wurde.
Sie können den Fehler hier sehen: Ссылка
Sie müssen global
-Anweisungen verwenden. Diese sind relativ einfach. Definieren Sie dazu einfach eine Variable als global, bevor Sie die Variable selbst definieren.
Zum Beispiel:
BEARBEITEN: Entschuldigung, es scheint, dass ich deine Frage falsch gelesen habe. Erlaube mir, es jetzt richtig zu beantworten.
%Vor%Die Ausgabe, wie im Code zu sehen: Ссылка