⊗pyPmFnSN 4 of 129 menu

Nuancer af arbejde med scopes i Python

Lad os overveje vigtige nuancer af arbejde med lokale og globale variable.

Antag at vi har en global variabel num. Lad os oprette en funktion func, som vil udskrive den globale num i konsollen:

num = 1 def func(): print(num) func() # vil udskrive 1

Og lad os nu deklarere en lokal num på linjen under funktionen print. Efter udførelse af koden vil der vises en fejl i konsollen. Dette sker fordi Python inden i funktionen opfatter num kun som en lokal variabel, som endnu ikke er blevet deklareret:

num = 1 def func(): print(num) # vil udskrive fejl num = 2

Lad os nu omskrive koden inde i funktionen så værdien af variablen num forøges med 2:

num = 1 def func(): num += 2 # vil udskrive fejl

Fejlen er forårsaget af, at udtrykket num += 2 repræsenterer følgende notation:

num = num + 2

Imidlertid er den lokale variabel selv, som der lægges til, endnu ikke deklareret. Og følgelig viser Python en fejl, da det ikke er muligt at lægge et tal til en ikke-eksisterende værdi.

Hvad bliver resultatet af udførelsen af følgende kode:

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

Hvad bliver resultatet af udførelsen af følgende kode:

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

Hvad bliver resultatet af udførelsen af følgende kode:

tst = 'abc' def func(): txt = tst.upper() return txt print(func()) print(tst)
Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis