Встречается на собеседованиях • сегодня

Как передаются объекты в функцию в Python

В Python аргументы в функцию передаются по ссылке на объект (pass by object reference). Это означает, что функция получает ссылку на тот же объект, что и переданный аргумент.

  • Изменяемые объекты (списки, словари, множества):
    Если внутри функции изменяется такой объект, изменения сохранятся и вне функции.
  • Неизменяемые объекты (числа, строки, кортежи):
    При попытке изменить их внутри функции создаётся новый объект, а исходный остаётся неизменным.

Пример:

python
def modify_list(lst):
    lst.append(4)  # изменяет переданный список

def modify_num(num):
    num += 10  # создаёт новый объект

my_list = [1, 2, 3]
modify_list(my_list)
print(my_list)  # [1, 2, 3, 4]

x = 5
modify_num(x)
print(x)  # 5 (не изменился)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы