Преношење варијабли по референци у Пајтону
У Пајтону варијабле које садрже сложене објекте преносе се по референци. То значи, све измене направљене у једној варијабли ће се одразити на другу. Иако се при таквом типу доделе вредности повећава ризик од појаве грешке, са друге стране значајно се штеде ресурси системске меморије ОС.
Нека имамо два списка:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
Пошто је променљивој lst2 додељена
вредност lst1, сада у оперативној
меморији рачунара се налази један списак,
на који истовремено указују две
варијабле.
Хајде да изменимо први елемент lst2
и испишемо први списак у конзолу:
lst2[0] = '!'
print(lst1) # исписаће ['!', 2, 3, 4, 5]
Какав ће бити резултат извршавања следећег кода:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2[0] = '!'
print(lst1)
Какав ће бити резултат извршавања следећег кода:
lst1 = [1, 2, 3, 4, 5]
lst2 = lst1
lst2[0] = '!'
print(lst2)
Какав ће бити резултат извршавања следећег кода:
lst1 = ['a', 'b', 'c', 'd']
lst2 = lst1
lst3 = 'e'
lst2[2] = lst3
print(lst2)