Der Bereich einer Variablen bezieht sich auf den Bereich, in dem eine Variable gültig sein kann, denn wenn wir eine Funktion verwenden, werden einige Variablen im Hauptprogramm und andere in der aufgerufenen Funktion definiert. Wenn unser Hauptprogramm die Funktion verwendet eine Variable, eine Ausnahme tritt auf. Lassen Sie uns lokale Variablen und globale Variablen einführen.
Lokale Variablen sind, wie der Name schon sagt, Variablen, die in einem lokalen Bereich wirken. Wenn eine Variable in einer Funktion definiert ist, funktioniert sie nur in der Funktion. Wenn eine Variable innerhalb der Funktion außerhalb der Funktion verwendet wird, tritt eine Ausnahme auf .
Schauen Sie sich das folgende Beispiel an:
deftest():data='local variable'print('Daten innerhalb der Funktion ausgeben:',data)test()print('Daten im Hauptprogramm ausgeben:',data)
Die Ausgabe ist:
Die Datenausgabe innerhalb der Funktion ist: lokale Variable Traceback(mostrecentcalllast):FileC:/Users/Qingyan/PycharmProjects/untitled/venv/Include/ts.py,line6,in<module>print('Ausgabedaten im Hauptprogramm: ',Daten)NameFehler:Name'Daten'ist nicht definiert
Da die Variablendaten innerhalb der Funktion definiert sind, besteht bei Verwendung der Variablendaten im Hauptprogramm das Problem, dass die Variable, auf die zugegriffen wird, nicht vorhanden ist. Daher sollten wir darauf achten, dass die innerhalb der Funktion definierten Variablen nicht vorhanden sind Bei Funktionen handelt es sich um lokale Variablen, auf die nicht zugegriffen werden kann.
Wir können globale Variablen auch aus der wörtlichen Bedeutung verstehen, dass sie global agierende Variablen sind. Einige Schüler denken vielleicht, dass globale Variablen im Hauptprogramm definiert sein müssen. Tatsächlich können globale Variablen auch in Funktionen wirken Zwei Möglichkeiten, globale Variablen zu verwenden:
Der Gültigkeitsbereich der Variablen, die wir im Hauptprogramm definieren, ist global und wir können diese Variablen auch direkt in den definierten Funktionen verwenden. Siehe das folgende Beispiel:
data='Globale Variable data'deftest():print('Dies ist eine globale Variable, die in der Funktion agiert:',data)test()print('Dies ist eine globale Variable, die außerhalb der Funktion agiert:',data)
Ausgabeergebnis:
Dies ist die globale Variable, die in der Funktion wirkt: globale Variablendaten. Dies ist die globale Variable, die außerhalb der Funktion wirkt: globale Variablendaten
Diese Methode ist die globale Variable, die wir normalerweise verwenden. Die Variablen, die wir im Hauptprogramm definieren, können direkt innerhalb der Funktion verwendet werden.
Die Variablen, die wir innerhalb der Funktion definieren, können auch als globale Variablen programmiert werden. Zu diesem Zeitpunkt müssen wir das Schlüsselwort global verwenden.
Schauen wir uns zunächst an, was passiert, wenn die Namen globaler und lokaler Variablen identisch sind. Schauen wir uns das folgende Beispiel an:
data='Hier ist die globale Variable data'print(data)deftest():data='Hier ist die lokale Variable data'print(data)test()print('Überprüfen Sie die globale Variable data noch einmal:',data)
Die Ausgabe ist:
Hier sind die globalen Variablendaten. Hier sind die lokalen Variablendaten. Überprüfen Sie noch einmal die globalen Variablendaten.
Aus diesem Beispiel können wir ersehen, dass, wenn die Namen globaler Variablen und lokaler Variablen gleich sind, dies keinen Einfluss auf den Inhalt der globalen Variablen hat. Wenn wir jedoch den Wert der globalen Variablen in der Funktion ändern möchten, dann tun wir dies müssen das globale Schlüsselwort verwenden.
Schauen Sie sich noch einmal das folgende Beispiel an:
data='Hier ist die globale Variable data'print(data)deftest():globaldatadata='Hier ist die lokale Variable data'print(data)test()print('Überprüfen Sie die globale Variable data noch einmal:',data)
Die Ausgabe ist:
Hier sind die globalen Variablendaten. Hier sind die lokalen Variablendaten. Überprüfen Sie noch einmal die globalen Variablendaten.
Durch das Schlüsselwort global teilt die lokale Deklaration der Funktion mit, dass global eine globale Variable ist. Nach der Änderung werden alle Variablen im globalen Schlüsselwort geändert.
Wenn keine Variable global deklariert ist, können wir auch das Schlüsselwort global verwenden, um eine Variable direkt als globale Variable zu deklarieren. Dann können die in der Funktion definierten Variablen auch im Hauptprogramm verwendet werden.
deftest():globaldatadata='Dies sind die lokal erstellten variablen Daten'print('Dies ist die Ausgabe in der Funktion:',data)test()print('Dies ist die Ausgabe im Hauptprogramm:',data)
Die Ausgabe ist:
Dies ist die Ausgabe in der Funktion: Dies sind die lokal erstellten variablen Daten. Dies ist die Ausgabe im Hauptprogramm: Dies sind die lokal erstellten variablen Daten
Anhand des obigen Beispiels können wir die Rolle des globalen Schlüsselworts bei der Steuerung globaler Variablen verstehen. Darüber hinaus sollten wir beim Schreiben von Programmen darauf achten, dass die Namen globaler Variablen und lokaler Variablen nicht identisch sind Bereiche, sie beeinflussen die Interaktion zwischen ihnen. Das ist alles für diesen Abschnitt. Im nächsten Abschnitt erfahren Sie mehr über anonyme Funktionen.