Python-da obyektlarni parametrlar orqali uzatish
Obyektlarni (ro'yxatlar, to'plamlar, kortejlar, lug'atlar) o'z ichiga olgan o'zgaruvchilar funktsiyalarga havola orqali uzatiladi. Keling, kodni funktsiyada qayta yozaylik, shunda birinchi element uzatilgan o'zgaruvchiga o'zgartirilsin undov belgisi. Va funktsiya ostida e'lon qilaylik qiymati ro'yxat bo'lgan o'zgaruvchi:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Ro'yxatlar havola orqali uzatilgani sababli,
funktsiyani chaqirishda lst ning qiymati ham o'zgaradi
global ko'rish sohasida:
func(lst) # chiqaradi ['!', 2, 3, 4, 5]
print(lst) # chiqaradi ['!', 2, 3, 4, 5]
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)