Pochopte rozsah globálních proměnných v pythonu

Understand Global Variables Scope Python



Ve většině programovacích jazyků lze definovat dva typy proměnných. Jedná se o globální a lokální proměnné. Proměnné, které jsou definovány mimo funkci, se nazývají globální proměnné. Tato proměnná je přístupná a měnitelná odkudkoli ve skriptu. Proměnná, která je deklarována uvnitř funkce, se nazývá místní proměnná. Pokud však existuje stejný název proměnné jako globální a místní proměnné, pak proměnná uvnitř funkce dostane prioritu a hodnota globální proměnné bude ignorována. Rozsah globální proměnné ve skriptu pythonu je v tomto kurzu ukázán pomocí různých příkladů.

Příklad-1: Jednoduché použití globální proměnné

Následující příklad ukazuje jednoduché použití globální proměnné uvnitř funkce a mimo funkci. Zde globální proměnná pojmenovaná text slouží k přiřazení řetězcových dat. Vlastní funkce s názvem printMessage () je definován pro tisk hodnoty globální proměnné. Hodnota text proměnná se po změně hodnoty vytiskne uvnitř funkce a mimo funkci.







#!/usr/bin/env python3

# Definujte globální proměnnou
text= 'Welcome to LinuxHint'

# Definujte funkci
defprintMessage():

# Vytiskněte globální proměnnou z funkce
tisk('Globální proměnná uvnitř funkce: n',text)

# Zavolejte funkci
printMessage()

# Změňte hodnotu globální proměnné
text= 'Naučte se programovat v Pythonu'

# Vytiskněte aktuální hodnotu globální proměnné
tisk('Globální proměnná mimo funkci: n',text)

Výstup:



Po spuštění skriptu se zobrazí následující výstup. Vytisklo hodnotu „ Vítejte v LinuxHint ‘ která je proměnné přiřazena před voláním funkce. Dále vytiskl hodnotu, „Naučte se programovat v Pythonu“ po změně hodnoty proměnné.







Příklad 2: Použití globální a místní proměnné se stejným názvem

Pokud chcete deklarovat název proměnné uvnitř funkce, která je již dříve v pythonu deklarována jako globální proměnná, a chcete proměnnou použít, bude s proměnnou zacházet jako s lokální proměnnou a generovat chybu. Následující skript zobrazí chybu. Tady, text proměnná je definována jako globální a lokální proměnná.

#!/usr/bin/env python3

# Definujte globální proměnnou
text= „Mám rád Python“

# Definujte funkci
defprintMessage():
tisk(text)

text= „Mám rád PHP“

# Zavolejte funkci
printMessage()

Výstup:



Po spuštění skriptu se zobrazí následující výstup.

Abyste se vyhnuli výše uvedené situaci a pokud chcete deklarovat lokální proměnnou se stejným názvem jako globální proměnnou, musíte nejprve přiřadit lokální proměnnou uvnitř funkce. Následující skript ukazuje, že změny v místní proměnné neprovádějí žádné změny v globální proměnné. text proměnná je zde vytištěna uvnitř i vně funkce.

#!/usr/bin/env python3

# Definujte globální proměnnou
text= „Mám rád Python“

# Definujte funkci
defprintMessage():
# Odbourejte místní hodnotu
text= „Mám rád PHP“
# Vytiskněte místní proměnnou, text
tisk('Hodnota' textu 'uvnitř funkce: n',text)

# Zavolejte funkci
printMessage()

# Vytiskněte globální proměnnou, text
tisk('Hodnota' textu 'mimo funkci: n',text)

Výstup:

Po spuštění skriptu se zobrazí následující výstup.

Příklad 3: Použití globální proměnné uvnitř funkce

Předchozí příklad ukazuje, že globální proměnná není přístupná uvnitř funkce. Můžeš použít globální klíčové slovo pro přístup ke globální proměnné z jakékoli funkce. V následujícím skriptu cal_percentage () funkce je definována pro výpočet procenta z libovolného čísla, kde jsou použity globální i lokální proměnné. Tady, na jednom je globální proměnná a perVal je lokální proměnná. globální Klíčové slovo se zde používá k identifikaci globální proměnné uvnitř funkce a hodnota globální proměnné se uvnitř funkce změní.

#!/usr/bin/env python3

# Vezměte celočíselnou hodnotu
na jednom= int(vstup('Zadejte číslo:'))

# Definujte funkci
defcal_percentage():
# Rozpoznat globální proměnnou pomocí globálního klíčového slova
globálnína jednom

# Vezměte celočíselnou hodnotu jako procento
perVal= int(vstup('Zadejte hodnotu v procentech:'))

# Vypočítejte procentuální hodnotu
výsledek= plovák((zda *perVal)/100)

# Vytiskněte formátovaný výsledek
tisk(' %d procento %d = %f'%(perVal,na jednom,výsledek))

# Změňte hodnotu globální proměnné
na jednom= 500

# Před voláním funkce vytiskněte hodnotu globální proměnné
tisk(' nHodnota num = %d '%na jednoho)

# Zavolejte funkci
cal_percentage()

# Po volání funkce vytiskněte hodnotu globální proměnné
tisk(' nHodnota num = %d '%na jednoho)

Výstup:

Po spuštění skriptu se zobrazí následující výstup. Zde se vypočítá a vytiskne 10% z 350.

Příklad-4: Použití globálních proměnných z jiného skriptu

Následující příklad ukazuje, jak lze globální proměnnou deklarovanou v jednom skriptu použít v jiném skriptu. Předpokládejme, že název souboru je global6.py které budou používat globální proměnné definované v pojmenovaném souboru global5.py . Tři globální proměnné jsou deklarovány v global5.py . Musíte importovat globální 5 použít proměnné v jiném skriptu. Skript global6.py vypočítá mzdu tří typů zaměstnanců na základě vstupních hodnot a globálních proměnných.

#!/usr/bin/env python3
# toto je soubor global5.py

# Základní platová struktura společnosti
Základní= 5 000
Lékařský= 500
Doprava= 500 #!/usr/bin/env python3
# toto je soubor global6.py

# Importujte globální proměnné z global5.py
importglobální 5

# Vezměte jméno zaměstnance
název= vstup(„Zadejte jméno zaměstnance:“)
# Vezměte název příspěvku
pošta= vstup('Zadejte příspěvek:')

# Inicializujte proměnnou chyby
chyba= Nepravdivé

# Zkontrolujte příspěvek a nastavte základní plat podle příspěvku
-li(pošta.horní() == 'VÝKONNÝ ŘEDITEL'):
základní=globální 5.Základní+(globální 5.Základní*0,4)
elif(pošta.horní() == 'MANAŽER'):
základní=globální 5.Základní+(globální 5.Základní*0,25)
elif(pošta.horní() == 'ÚČETNÍ'):
základní=globální 5.Základní+(globální 5.Základní*0,15)
jiný:
# Nastavit chybu na true, pokud nebyla nalezena hodnota příspěvku
chyba= Skutečný

# Pokud je chyba falešná, vytiskněte plat
-li (chyba== Nepravdivé):
plat=základní + globální 5.Lékařský+ globální 5.Doprava
tisk('Plat %s je %d'%(název,plat))
jiný:
tisk(„Příspěvek nebyl nalezen“)

Výstup:

Po spuštění skriptu se zobrazí následující výstup. Zde je skript spuštěn dvakrát s platným příspěvkem a neplatným příspěvkem.

Závěr:

V tomto tutoriálu je vysvětlen koncept globální proměnné v pythonu s různými jednoduchými příklady pro nové uživatele pythonu. Doufám, že po přečtení tohoto tutoriálu získají čtenáři správné znalosti globálních i lokálních proměnných.

Podívejte se na autorské video: tady