Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Globales Python-Schlüsselwort

Globales Python-Schlüsselwort

In diesem Artikel erfahren Sie mehr über das globale Schlüsselwort, die globale Variable und wann Sie globale Schlüsselwörter verwenden sollten.

Bevor Sie diesen Artikel lesen, vergewissern Sie sich, dass Sie einige Grundlagen zu globalen, lokalen und nicht lokalen Python-Variablen haben.


Was ist das globale Schlüsselwort

In Python global Mit dem Schlüsselwort können Sie die Variable außerhalb des aktuellen Gültigkeitsbereichs ändern. Es wird verwendet, um eine globale Variable zu erstellen und Änderungen an der Variablen in einem lokalen Kontext vorzunehmen.


Regeln des globalen Keywords

Die Grundregeln für global Schlüsselwörter in Python sind:


Verwendung des globalen Keywords

Nehmen wir ein Beispiel.

Beispiel 1:Zugriff auf globale Variable innerhalb einer Funktion

c = 1 # global variable

def add():
    print(c)

add()

Wenn wir das obige Programm ausführen, lautet die Ausgabe:

1

Es kann jedoch vorkommen, dass wir einige Szenarien haben, in denen wir die globale Variable innerhalb einer Funktion ändern müssen.


Beispiel 2:Globale Variable innerhalb der Funktion ändern

c = 1 # global variable
    
def add():
    c = c + 2 # increment c by 2
    print(c)

add()

Wenn wir das obige Programm ausführen, zeigt die Ausgabe einen Fehler:

UnboundLocalError: local variable 'c' referenced before assignment

Dies liegt daran, dass wir nur auf die globale Variable zugreifen, sie aber nicht innerhalb der Funktion ändern können.

Die Lösung hierfür ist die Verwendung des global Schlüsselwort.


Beispiel 3:Ändern einer globalen Variablen innerhalb einer Funktion mit global

c = 0 # global variable

def add():
    global c
    c = c + 2 # increment by 2
    print("Inside add():", c)

add()
print("In main:", c)

Wenn wir das obige Programm ausführen, lautet die Ausgabe:

Inside add(): 2
In main: 2

Im obigen Programm definieren wir c als globales Schlüsselwort innerhalb von add() Funktion.

Dann erhöhen wir die Variable c um 2 , also c = c + 2 . Danach rufen wir den add() auf Funktion. Schließlich geben wir die globale Variable c aus .

Wie wir sehen können, hat sich auch die globale Variable außerhalb der Funktion geändert, c = 2 .


Globale Variablen über Python-Module hinweg

In Python erstellen wir ein einzelnes Modul config.py um globale Variablen zu halten und Informationen über Python-Module innerhalb desselben Programms auszutauschen.

So können wir globale Variablen über die Python-Module hinweg teilen.

Beispiel 4:Eine globale Variable über Python-Module hinweg teilen

Erstellen Sie eine config.py Datei, um globale Variablen zu speichern

a = 0
b = "empty"

Erstellen Sie eine update.py Datei, um globale Variablen zu ändern

import config

config.a = 10
config.b = "alphabet"

Erstellen Sie eine main.py Datei, um Wertänderungen zu testen

import config
import update

print(config.a)
print(config.b)

Wenn wir main.py ausführen Datei ist die Ausgabe

10
alphabet

Oben haben wir drei Dateien erstellt:config.py , update.py , und main.py .

Das Modul config.py speichert globale Variablen von a und b . Im update.py Datei importieren wir den config.py Modul und ändern Sie die Werte von a und b . Ebenso im main.py Datei importieren wir beide config.py und update.py Modul. Schließlich drucken und testen wir die Werte globaler Variablen, ob sie geändert wurden oder nicht.


Global in verschachtelten Funktionen

So können Sie eine globale Variable in einer verschachtelten Funktion verwenden.

Beispiel 5:Verwenden einer globalen Variablen in einer verschachtelten Funktion

def foo():
    x = 20

    def bar():
        global x
        x = 25
    
    print("Before calling bar: ", x)
    print("Calling bar now")
    bar()
    print("After calling bar: ", x)

foo()
print("x in main: ", x)

Die Ausgabe ist :

Before calling bar: 20
Calling bar now
After calling bar: 20
x in main: 25

Im obigen Programm haben wir eine globale Variable innerhalb der verschachtelten Funktion bar() deklariert . Innerhalb von foo() Funktion, x hat keine Auswirkung auf das globale Schlüsselwort.

Vor und nach dem Aufruf von bar() , die Variable x nimmt den Wert der lokalen Variablen, z. B. x = 20 . Außerhalb von foo() Funktion, die Variable x nimmt den in bar() definierten Wert an Funktion, also x = 25 . Das liegt daran, dass wir global verwendet haben Schlüsselwort in x um eine globale Variable innerhalb von bar() zu erstellen Funktion (lokaler Geltungsbereich).

Wenn wir Änderungen innerhalb des bar() vornehmen Funktion erscheinen die Änderungen außerhalb des lokalen Bereichs, d. h. foo() .


Python

  1. Python-Datentypen
  2. Python-Operatoren
  3. Python-pass-Anweisung
  4. Python-Funktionsargumente
  5. Python Globale, lokale und nicht lokale Variablen
  6. Python-Wörterbuch
  7. Python-Iteratoren
  8. Python-Schließungen
  9. Python-Datetime
  10. Python – Übersicht