Verwendung globaler Python-Variablen: 1. Um auf die globale Variable zu verweisen, lautet der Code: [if i in b:print("%d in list b" %i)] 2. Um die globale Variable zu ändern, lautet der Code [print „before func b :“, b].
Verwendung von globalen Python-Variablen:
1. Referenz
Die verwendete globale Variable dient nur als Referenz. Wenn ihr Wert in der Funktion nicht geändert wird, besteht keine Notwendigkeit, sie hinzuzufügen globales Schlüsselwort. Zum Beispiel:
#! /usr/bin/python a = 1 b = [2, 3] def func(): if a == 1: print("a: %d" %a) for i in range(4): if i in b: print("%d in list b" %i) else: print("%d not in list b" %i) if __name__ == '__main__': func()
Ausgabeergebnis:
Es ist ersichtlich, dass sowohl Listen als auch Variablen direkt in Anführungszeichen gesetzt werden können.
2. Ändern Sie die von
verwendeten globalen Variablen. Wenn sie in der Funktion geändert werden müssen, führt dies zu Mehrdeutigkeitsproblemen, wie zum Beispiel:
#! /usr/bin/python a = 1 b = [2, 3] def func(): a = 2 print "in func a:", a b[0] = 1 print "in func b:", b if __name__ == '__main__': print "before func a:", a print "before func b:", b func() print "after func a:", a print "after func b:", b
Ausgabeergebnis:
Das ist ersichtlich Für die Variable a besteht in „a = 2“ in der Funktion func die Mehrdeutigkeit, entweder auf die globale Variable a zu verweisen oder eine neue lokale Variable zu erstellen. Daher gibt Python standardmäßig an, eine neue lokale Variable zu erstellen, um diese Mehrdeutigkeit zu beseitigen, aber für Listen Für b weist „b[0] = 1“ diese Mehrdeutigkeit nicht auf.
Die globale Variable wird also direkt geändert, aber wenn sie in „b = [3, 4]“ geändert wird, wird b auch zu einer lokalen Variablen. Insbesondere wenn die Anweisung „if a == 1:“ vor a = 2 in func eingefügt wird, wird das Skript falsch ausgeführt, da diese Anweisung eine globale Variable einführt, was dazu führt, dass die Anweisung „a = 1“ keine Variable erstellen kann mit demselben Namen.
Daher müssen Sie die globale Variable a ändern. Sie können die globale a-Anweisung vor „a = 2“ hinzufügen, z. B.:
#! /usr/bin/python a = 1 b = [2, 3] def func(): global a a = 2 print "in func a:", a b[0] = 1 print "in func b:", b if __name__ == '__main__': print "before func a:", a print "before func b:", b func() print "after func a:", a print "after func b:", b
Ausgabeergebnis:
Schlussfolgerung: Referenzieren Sie die globale Variable, kein Global Wenn eine Deklaration erforderlich ist, ändern Sie die globale Variable. Sie müssen eine globale Anweisung verwenden. Insbesondere wenn Sie nur die Werte von Elementen in Listen, Wörterbüchern usw. ändern, können Sie globale Variablen direkt ohne globale Anweisung verwenden.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie globale Variablen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!