Overdracht van objecten als parameters in Python
Variabelen die objecten bevatten (lijsten, sets, tupels, woordenboeken) worden in functies doorgegeven als referentie. Laten we de code in de functie herschrijven zodat het eerste element van de doorgegeven variabele veranderd wordt in een uitroepteken. En onder de functie declareren we een variabele waarvan de waarde een lijst is:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Aangezien lijsten als referentie worden doorgegeven,
zal bij het aanroepen van de functie ook de waarde van lst
in het globale bereik veranderen:
func(lst) # geeft ['!', 2, 3, 4, 5] weer
print(lst) # geeft ['!', 2, 3, 4, 5] weer
Wat wordt het resultaat van de volgende code:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Wat wordt het resultaat van de volgende code:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Wat wordt het resultaat van de volgende code:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Wat wordt het resultaat van de volgende code:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)