⊗pyPmFnSN 4 of 129 menu

Nuansy práce s oblasťami viditeľnosti v Pythone

Pozrime sa na dôležité nuansy práce s lokálnymi a globálnymi premennými.

Majme globálnu premennú num. Vytvorme funkciu func, ktorá bude vypisovať globálnu num do konzoly:

num = 1 def func(): print(num) func() # vypíše 1

A teraz deklarujme lokálnu num na riadku pod funkciou print. Po vykonaní kódu sa do konzoly vypíše chyba. Deje sa tak preto, že Python vo vnútri funkcie vníma num iba ako lokálnu premennú, ktorá ešte nebola deklarovaná:

num = 1 def func(): print(num) # vypíše chybu num = 2

Teraz prepíšme kód vo vnútri funkcie tak, aby sa hodnota premennej num zvýšila o 2:

num = 1 def func(): num += 2 # vypíše chybu

Chyba je spôsobená tým, že výraz num += 2 predstavuje nasledujúci zápis:

num = num + 2

Avšak samotná lokálna premenná, ku ktorej prichádza k pripočítavaniu, ešte nie je deklarovaná. A teda Python vypisuje chybu, pretože nie je možné pripočítať číslo k neexistujúcej hodnote.

Aký bude výsledok vykonania nasledujúceho kódu:

tst = '12' def func(): tst = 12 return tst print(tst)

Aký bude výsledok vykonania nasledujúceho kódu:

tst = 'abc' def func(): tst = tst.upper() return tst func() print(tst)

Aký bude výsledok vykonania nasledujúceho kódu:

tst = 'abc' def func(): txt = tst.upper() return txt print(func()) print(tst)
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť