Sobes.tech
Junior — Middle

Dəyişdirilə bilən məlumat tiplərinin obyektləri funksiyaya arqument kimi verildikdə necə dəyişir?

sobes.tech Süni İntellekt

AI-dan cavab

Python-da dəyişdirilə bilən tiplərdəki obyektlər (məsələn, siyahılar, lüğətlər, dəstlər) funksiyaya obyektə istinadla ötürülür. Bu, funksiyada obyektin məzmununu dəyişsəniz (məsələn, siyahıya element əlavə etsəniz), bu dəyişikliklər funksiyanın xaricində də görünəcək.

Misal:

def add_element(lst):
    lst.append(10)

my_list = [1, 2, 3]
add_element(my_list)
print(my_list)  # Nəticə: [1, 2, 3, 10]

Ancaq, funksiyada parametrə yeni obyekt təyin etsəniz, bu, xarici obyektə təsir etməz:

def replace_list(lst):
    lst = [4, 5, 6]  # Yeni obyekt yaradılır, funksiya üçün yerli

my_list = [1, 2, 3]
replace_list(my_list)
print(my_list)  # Nəticə: [1, 2, 3]

Bu səbəbdən, dəyişdirilə bilən obyektləri funksiyaya ötürərkən, onların məzmununu dəyişə bilərsiniz və bu dəyişikliklər funksiyanın xaricində də qalacaq.