Fynerhede van werking met sieningsvelde in Python
Laat ons belangrike fynerhede van werking met plaaslike en globale veranderlikes oorweeg.
Gestel ons het 'n globale veranderlike num.
Kom ons skep 'n funksie func,
wat die globale num
in die konsole sal uitskryf:
num = 1
def func():
print(num)
func() # sal 1 uitskryf
En laat ons nou 'n plaaslike num verklaar op
die reël onder die funksie print. Na
uitvoering van die kode sal 'n fout in die konsole verskyn.
Dit gebeur omdat Python
binne die funksie num slegs sien
as 'n plaaslike veranderlike, wat
nog nie verklaar is nie:
num = 1
def func():
print(num) # sal fout uitskryf
num = 2
Laat ons nou die kode binne die funksie herskryf
sodat die waarde van die veranderlike num
vermeerder word met 2:
num = 1
def func():
num += 2 # sal fout uitskryf
Die fout word veroorsaak deurdat die uitdrukking num += 2
die volgende skryfwyse verteenwoordig:
num = num + 2
Maar die plaaslike veranderlike self, waaraan optelling plaasvind, is nog nie verklaar nie. En gevolglik skryf Python 'n fout uit, aangesien dit nie moontlik is om 'n getal by 'n nie-bestaande waarde te tel nie.
Wat sal die resultaat van die uitvoering van die volgende kode wees:
tst = '12'
def func():
tst = 12
return tst
print(tst)
Wat sal die resultaat van die uitvoering van die volgende kode wees:
tst = 'abc'
def func():
tst = tst.upper()
return tst
func()
print(tst)
Wat sal die resultaat van die uitvoering van die volgende kode wees:
tst = 'abc'
def func():
txt = tst.upper()
return txt
print(func())
print(tst)