Objektu nodošana parametros Python
Mainīgie, kas satur objektus (sarakstus, kopas, kortēžus, vārdnīcas) funkcijās tiek nodoti pa referenci. Pārrakstīsim kodu funkcijā tā, lai pirmais elements padotā mainīgā tiktu mainīts uz izsaukuma zīmi. Un zem funkcijas deklarēsim mainīgo, kura vērtība ir saraksts:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Tā kā saraksti tiek nodoti pa referenci,
izsaucot funkciju, mainīsies arī lst
vērtība globālajā apjomā:
func(lst) # izvadīs ['!', 2, 3, 4, 5]
print(lst) # izvadīs ['!', 2, 3, 4, 5]
Kāds būs šāda koda izpildes rezultāts:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Kāds būs šāda koda izpildes rezultāts:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Kāds būs šāda koda izpildes rezultāts:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Kāds būs šāda koda izpildes rezultāts:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)