В структуре кучи Python поддерживается память, а все объекты являются объектами
ex a=5
здесь 5 хранится в ячейке памяти, а указатель на нее.
, так что если вы делаетеb=5
затем hex (id (a)) == hex (id (b)), оба объекта указывают на одну и ту же область памяти.
поэтому интерфейс такой:
объект Python - модуль указателя -> фактическая ячейка памяти
, поэтому, если вы измените значение a, скажем a = 53, то проверьте hex(id(a))
тогда вы обнаружите, что оно отличается от предыдущего, но объект тот же. так что мы можем сказать, что новое расположение mmory выполнено, выделение промежуточного объекта Python (не знаю, как это называется) обрабатывает присвоение (привязку) к новой ячейке памяти, и объект (a)
теперь задается вопросом, как долгоон поддерживает неназначенное значение 5 в памяти, все зависит от размера кучи, сколько может хранить распределитель мусора, c apis