Sobes.tech
Junior — Middle

Kako se objekti promenljivih tipova podataka menjaju prilikom njihovog prenosa u funkciju kao argumenti?

sobes.tech АИ

Одговор од АИ

У Python-u, објекти променљивог типа (на пример, листе, речници, скупови) се преносе у функцију преко референце на објекат. То значи да ако унутар функције измените садржај објекта (на пример, додавањем елемента у листу), те измене ће бити видљиве и изван функције.

Пример:

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

my_list = [1, 2, 3]
add_element(my_list)
print(my_list)  # Исписаће: [1, 2, 3, 10]

Међутим, ако унутар функције доделите параметру нови објекат, то неће утицати на спољашњи објекат:

def replace_list(lst):
    lst = [4, 5, 6]  # Ствара се нови објекат, локални за функцију

my_list = [1, 2, 3]
replace_list(my_list)
print(my_list)  # Исписаће: [1, 2, 3]

Стога, при преносу променљивих објеката у функцију, можете мењати њихов садржај, и те измене ће остати изван функције.