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)