Перадача аб'ектаў параметрамі ў Python
Зменныя, якія ўтрымліваюць аб'екты (спісы, мноствы, картэжы, слоўнікі) у функцыях перадаюцца па спасылцы. Давайце перапішам код у функцыі так, каб першы элемент перадаванай зменнай мяняўся на клічнік. А ніжэй функцыі аб'явім зменную, значэннем якой з'яўляецца спіс:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Паколькі спісы перадаюцца па спасылцы, пры
выкліку функцыі зменіцца і значэнне lst
у глабальнай вобласці бачання:
func(lst) # выведзе ['!', 2, 3, 4, 5]
print(lst) # выведзе ['!', 2, 3, 4, 5]
Якім будзе вынік выканання наступнага кода:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Якім будзе вынік выканання наступнага кода:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Якім будзе вынік выканання наступнага кода:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Якім будзе вынік выканання наступнага кода:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)