Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Schwierigkeiten bei der Verwendung lokaler Variablen und globaler Variablen in Python

Detaillierte Erläuterung der Schwierigkeiten bei der Verwendung lokaler Variablen und globaler Variablen in Python

巴扎黑
巴扎黑Original
2017-09-19 11:06:281854Durchsuche

Lokale Variablen: Variablen, die in einer Funktion definiert sind. Ihr Gültigkeitsbereich ist die aktuelle Funktion und sie funktionieren nur für die aktuelle Funktion.

Globale Variablen: Variablen, die am Anfang des Codes definiert sind, der Gültigkeitsbereich ist der gesamte Code und wirkt sich auf den gesamten Code aus.

Sehen Sie sich zunächst die folgenden Beispiele an und ziehen Sie abschließend eine Schlussfolgerung.

name = 'PythonTab'
def func1():
    print('my name is %s' %(name))
    name = 'PythonTab.com'
    print('my name is %s' %(name))
func1()
print(name)

Ausgabeergebnis:

my name is PythonTab
my name is PythonTab.com
default

Schlussfolgerung: Wenn globale Variablen und lokale Variablen gleich sind, werden lokale Variablen innerhalb der Funktion zuerst verwendet, wenn keine lokalen Variablen vorhanden sind Variablen, globale Variablen werden verwendet.

Wenn wir möchten, dass lokale Variablen Auswirkungen auf globale Variablen innerhalb der Funktion haben, können wir uns das Ausgabeergebnis von

name = 'default'
def func2():
    global name
    name = 'PythonTab.com'
    print(name)
func2()
print(name)
:

PythonTab.com
PythonTab.com
Sehen wir uns

nameList =['Python','Tab','.com']
def func3():
    nameList[0] = 'python'
func3()
print(nameList)
Ausgabeergebnisse an:

['python','Tab','.com']
nameList =['Python','Tab','.com']
def func4():
    nameList = []
func4()
print(nameList)
Ausgabeergebnisse:


['python','Tab','.com']
Hier können Sie sehen, dass sich die globale Variable nameList geändert hat. Global wird nicht innerhalb der Funktion aufgerufen, sondern die globale Variable wird geändert. Denn wenn Sie in Python nur den Wert der Elemente in einer Liste, einem Wörterbuch usw. ändern, benötigen Sie keinen Glob. Wenn Sie die gesamte Liste ändern möchten, müssen Sie einen Glob haben.

nameList =['Python','Tab','.com']
def func5():
    gloabl nameList
    nameList = []
func5()
print(nameList)
Ausgabeergebnis:

[]
Zusammenfassung: Lokale Funktionen wirken nur innerhalb der Funktion, und globale Funktionen wirken auf den gesamten Code, wenn Sie den Wert des globalen ändern möchten Variable innerhalb der Funktion mithilfe von glob. Wenn Sie nur einen bestimmten Wert in einer Liste, einem Wörterbuch usw. ändern, können Sie globale Variablen ohne globale ändern.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Schwierigkeiten bei der Verwendung lokaler Variablen und globaler Variablen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn