Какие плюсы и минусы передачи переменных по ссылки

Python Junior Билайн
Какие плюсы и минусы передачи переменных по ссылки
Ответы
**Плюсы передачи по ссылке:** - Экономия памяти (не создаются копии объектов) - Возможность модификации переданных объектов внутри функции - Удобно для работы с большими структурами данных **Минусы:** - Неожиданные изменения переданных данных (side effects) - Сложнее отслеживать состояние программы - Может снижать читаемость кода **Пример:** ``` def modify_list(lst): lst.append(4) # изменяет оригинальный список my_list = [1, 2, 3] modify_list(my_list) print(my_list) # [1, 2, 3, 4] - оригинал изменён ``` Для избежания side effects можно использовать копирование: ``` from copy import deepcopy def safe_modify(lst): new_lst = deepcopy(lst) new_lst.append(5) return new_lst ```