Ответ выше верен, но я возражаю против семантики «ссылки».
В C-подобных языках переменные рассматриваются как фиксированные сегменты, в которые помещаются значения.Когда вы вызываете функцию, создается новый набор сегментов, и значения копируются в них.Иногда корзина передается по ссылке и фактически становится псевдонимом для корзины вызывающей стороны.
С другой стороны, Python рассматривает переменные как простые метки (имена) для значений (объектов).Когда вы вызываете функцию, новый набор меток создается и накладывается на эти же объекты.
Не имеет смысла упоминать «ссылки» в контексте Python, потому что в любом другом языке »ссылка "подразумевает альтернативу" стоимости ".У Python такой двойственности нет;он просто обходит и присваивает объекты.Ничто не относится к .
Возможно, клеветнически, но терминология не создает путаницы для программистов на C ++, которые, например, слышат, как Python передает ссылки, и не понимают, как переназначить вызывающего.имена.