В Python-сообществе способ передачи аргументов называют передачей через присваивание, а не передачей ссылок по значению, потому что переменная в Python — это не традиционная переменная, а привязка к объекту. 12 По сути, это указатель, но на объект, а не на ячейку памяти. 1
При вызове функции каждый параметр связывается с соответствующим объектом, указанным в сигнатуре функции. 3 Если передаётся неизменяемый параметр (например, int), то нет возможности как-то его изменить. 3 Каждый раз, когда используется присваивание, то создаётся новый объект, хоть и имеющий то же самое имя. 3
С другой стороны, изменяемые объекты, которые передаются в качестве параметров, могут быть изменены, точнее их содержимое. 3