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:

pythondef 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:

pythonfunc(lst) # geeft ['!', 2, 3, 4, 5] weer
print(lst) # geeft ['!', 2, 3, 4, 5] weer
Задание 1

Wat wordt het resultaat van de volgende code:

pythondef func(lst):
  lst[0] = '!'
  
lst = [1, 2, 3, 4, 5]
func(lst)

print(lst)
Задание 2

Wat wordt het resultaat van de volgende code:

pythondef func(lst):
  lst[0] = '!'
  
lst = [1, 2, 3, 4, 5]
lst = func(lst)

print(lst)
Задание 3

Wat wordt het resultaat van de volgende code:

pythondef func(lst):
  lst = '!'

lst = [1, 2, 3, 4, 5]
func(lst[0])

print(lst)
Задание 4

Wat wordt het resultaat van de volgende code:

pythondef func(dct):
  for key in dct.keys():
    dct[key] += 2
  
dct = {
  'a': 1,
  'b': 2,
  'c': 3,
}

func(dct)
print(dct)