Oordrag van objekte as parameters in Python
Veranderlikes wat objekte bevat (lyste, versamelings, tupels, woordeboeke) word in funksies verwysing oorgedra. Kom ons herskryf die kode in die funksie sodat die eerste element van die oorgedraagde veranderlike verander na 'n uitroepteken. En onder die funksie verklaar ons 'n veranderlike waarvan die waarde 'n lys is:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Aangesien lyste per verwysing oorgedra word, sal
die funksie-oproep ook die waarde van lst
in die globale sieningsveld verander:
func(lst) # sal ['!', 2, 3, 4, 5] uitvoer
print(lst) # sal ['!', 2, 3, 4, 5] uitvoer
Wat sal die resultaat van die uitvoering van die volgende kode wees:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Wat sal die resultaat van die uitvoering van die volgende kode wees:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Wat sal die resultaat van die uitvoering van die volgende kode wees:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Wat sal die resultaat van die uitvoering van die volgende kode wees:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)