Какое поведение у изменяемых типов данных при передачи в функцию

Python Middle Без компании
Какое поведение у изменяемых типов данных при передачи в функцию
Ответы
При передаче изменяемых типов (например, списков, словарей) в функцию, передаётся ссылка на объект. Изменения внутри функции отражаются на оригинальном объекте, так как они работают с тем же участком памяти. Пример: ``` def modify_list(lst): lst.append(4) # Изменяет оригинальный список my_list = [1, 2, 3] modify_list(my_list) print(my_list) # [1, 2, 3, 4] ``` Для избежания неожиданных изменений можно создать копию: ``` def safe_modify(lst): new_lst = lst.copy() new_lst.append(5) return new_lst original = [1, 2, 3] modified = safe_modify(original) print(original) # [1, 2, 3] print(modified) # [1, 2, 3, 5] ```