Python

Razumevanje obsega globalnih spremenljivk v pythonu

Razumevanje obsega globalnih spremenljivk v pythonu
V večini programskih jezikov je mogoče definirati dve vrsti spremenljivk. To so globalne spremenljivke in lokalne spremenljivke. Spremenljivke, ki so definirane zunaj funkcije, imenujemo globalna spremenljivka. Ta spremenljivka je dostopna in spremenljiva kjer koli v skriptu. Spremenljivka, ki je razglašena znotraj funkcije, se imenuje lokalna spremenljivka. Če pa isto ime spremenljivke obstaja kot globalna in lokalna spremenljivka, bo spremenljivka znotraj funkcije dobila prednost in vrednost globalne spremenljivke bo prezrta. Obseg globalne spremenljivke v skriptu python je prikazan v tej vadnici z različnimi primeri.

Primer-1: Preprosta uporaba globalne spremenljivke

Naslednji primer prikazuje preprosto uporabo globalne spremenljivke znotraj funkcije in zunaj funkcije. Tu se imenuje globalna spremenljivka besedilo se uporablja za dodelitev nizovnih podatkov. Funkcija po meri z imenom printMessage () je definiran za tiskanje vrednosti globalne spremenljivke. Vrednost besedilo spremenljivka se po spremembi vrednosti natisne znotraj funkcije in zunaj funkcije.

#!/ usr / bin / env python3
# Določite globalno spremenljivko
text = "Dobrodošli v LinuxHint"
# Določite funkcijo
def printMessage ():
# Natisnite globalno spremenljivko iz funkcije
print ("Globalna spremenljivka znotraj funkcije: \ n", besedilo)
# Pokličite funkcijo
printMessage ()
# Spremenite vrednost globalne spremenljivke
text = "Nauči se programiranja Python"
# Natisnite trenutno vrednost globalne spremenljivke
print ("Globalna spremenljivka zunaj funkcije: \ n", besedilo)

Izhod:

Po zagonu skripta se prikaže naslednji izhod. Natisnila je vrednost, 'Dobrodošli v LinuxHint ' ki je spremenljivki dodeljena pred klicanjem funkcije. Nato je natisnil vrednost, 'Naučite se programiranja Python'  po spremembi vrednosti spremenljivke.

Primer-2: Uporaba globalne in lokalne spremenljivke z istim imenom

Če želite v spremenljivki prijaviti ime spremenljivke, ki je že bila deklarirana kot globalna spremenljivka v pythonu in želite uporabiti spremenljivko, bo spremenljivko obravnavala kot lokalno spremenljivko in ustvarila napako. Naslednji skript bo prikazal napako. Tukaj, besedilo spremenljivka je definirana kot globalna in lokalna spremenljivka.

#!/ usr / bin / env python3
# Določite globalno spremenljivko
text = "Všeč mi je Python"
# Določite funkcijo
def printMessage ():
tiskanje (besedilo)
text = "Všeč mi je PHP"
# Pokličite funkcijo
printMessage ()

Izhod:

Po zagonu skripta se prikaže naslednji izhod.

Da bi se izognili zgornji situaciji in če želite lokalno spremenljivko razglasiti z istim imenom kot globalna spremenljivka, morate najprej dodeliti lokalno spremenljivko znotraj funkcije. Naslednji skript kaže, da spremembe lokalne spremenljivke ne povzročajo sprememb v globalni spremenljivki. besedilo spremenljivka je tukaj natisnjena znotraj in zunaj funkcije.

#!/ usr / bin / env python3
# Določite globalno spremenljivko
text = "Všeč mi je Python"
# Določite funkcijo
def printMessage ():
# Omislite si lokalno vrednost
text = "Všeč mi je PHP"
# Natisnite lokalno spremenljivko, besedilo
print ("Vrednost 'besedila' znotraj funkcije: \ n", besedilo)
# Pokličite funkcijo
printMessage ()
# Natisnite globalno spremenljivko, besedilo
print ("Vrednost 'text' zunaj funkcije: \ n", besedilo)

Izhod:

Po zagonu skripta se prikaže naslednji izhod.

Primer-3: Uporaba globalne spremenljivke znotraj funkcije

Prejšnji primer kaže, da globalna spremenljivka ni dostopna znotraj funkcije. Lahko uporabiš globalno ključna beseda za dostop do globalne spremenljivke iz katere koli funkcije. V naslednjem skriptu, cal_percentage () funkcija je definirana za izračun odstotka katerega koli števila, pri katerem se uporabljajo tako globalne kot lokalne spremenljivke. Tukaj, številka je globalna spremenljivka in perVal je lokalna spremenljivka. globalno Ključna beseda se tukaj uporablja za identifikacijo globalne spremenljivke znotraj funkcije, vrednost globalne spremenljivke pa se spremeni znotraj funkcije.

#!/ usr / bin / env python3
# Vzemite celoštevilčno vrednost
num = int (vnos ("Vnesite številko:"))
# Določite funkcijo
def cal_percentage ():
# Globalno spremenljivko prepoznajte z uporabo ključne besede global
globalno število
# Vzemite celoštevilčno vrednost kot odstotek
perVal = int (vnos ("Vnesite odstotno vrednost:"))
# Izračunajte odstotno vrednost
rezultat = float ((število * naVal) / 100)
# Natisnite formatirani rezultat
natisni ("% d odstotek% d =% f"% (na vrednost, število, rezultat))
# Spremenite vrednost globalne spremenljivke
število = 500
# Pred klicanjem funkcije natisnite vrednost globalne spremenljivke
print ("\ nVrednost num =% d"% num)
# Pokličite funkcijo
cal_percentage ()
# Po klicu funkcije natisnite vrednost globalne spremenljivke
print ("\ nVrednost num =% d"% num)

Izhod:

Po zagonu skripta se prikaže naslednji izhod. Tu se izračuna in natisne 10% od 350.

Primer-4: Uporaba globalnih spremenljivk iz drugega skripta

Naslednji primer prikazuje, kako lahko globalno spremenljivko, prijavljeno v enem skriptu, uporabimo v drugem skriptu. Recimo, da je ime datoteke globalno6.py ki bo uporabil globalne spremenljivke, definirane v datoteki z imenom globalno5.py. Tri globalne spremenljivke so prijavljene v globalno5.py. Uvoziti morate globalno5 za uporabo spremenljivk v drugem skriptu. Scenarij globalno6.py bo izračunal plačo treh vrst zaposlenih na podlagi vhodnih vrednosti in globalnih spremenljivk.

#!/ usr / bin / env python3
# to je globalno5.datoteko
# Osnovna plačna struktura podjetja
Osnovno = 5000
Medicinska = 500
Prevoz = 500 #!/ usr / bin / env python3
# to je globalno6.datoteko
# Uvozite globalne spremenljivke iz global5.py
uvoz globalno5
# Vzemite ime zaposlenega
name = input ("Vnesite ime zaposlenega:")
# Vzemi ime delovnega mesta
post = input ("Enter the post:")
# Inicializirajte spremenljivko napake
error = False
# Preverite delovno mesto in nastavite osnovno plačo glede na delovno mesto
če (post.zgornji () == "CEO"):
osnovno = globalno5.Osnovno + (globalno5.Osnovno * 0.4)
elif (post.zgornji () == "MANAGER"):
osnovno = globalno5.Osnovno + (globalno5.Osnovno * 0.25)
elif (post.zgornji () == "RAČUNOVODSTVO"):
osnovno = globalno5.Osnovno + (globalno5.Osnovno * 0.15)
sicer:
# Nastavite napako na true, če vrednosti objave ni mogoče najti
napaka = True
# Natisnite plačo, če je napaka napačna
če (napaka == napačno):
plača = osnovna + globalna5.Medicinski + globalni5.Prevoz
print ("Plača% s je% d"% (ime, plača))
sicer:
print ("Objave ni mogoče najti")

Izhod:

Po zagonu skripta se prikaže naslednji izhod. Tu se skript zažene dvakrat z veljavno objavo in neveljavno objavo.

Zaključek:

Koncept globalne spremenljivke v pythonu je razložen v tej vadnici z različnimi preprostimi primeri za nove uporabnike pythona. Upam, da bodo bralci po branju te vadnice dobili ustrezno znanje o globalnih in lokalnih spremenljivkah.

Oglejte si avtorski video: tukaj

Kako prikazati števec FPS v igrah Linux
Linux gaming je dobil velik zagon, ko je Valve leta 2012 napovedal podporo Linuxu za odjemalca Steam in njihove igre. Od takrat se je veliko AAA in in...
Kako prenesti in igrati Sid Meier's Civilization VI v Linuxu
Uvod v igro Civilization 6 je sodoben pogled na klasični koncept, uveden v seriji iger Age of Empires. Ideja je bila dokaj preprosta; začeli bi v zelo...
Kako namestiti in igrati Doom v Linuxu
Uvod v Doom Serija Doom je nastala v devetdesetih letih po izidu prvotnega Dooma. Bil je takojšen hit in od takrat naprej je serija iger prejela števi...