В python имя переменной, ссылка и уникальный идентификатор (функция id ()) также занимают место в памяти? - PullRequest
2 голосов
/ 18 июня 2020

Например,

x = 5

значение 5 сохраняется в памяти. Сохраняются ли где-то в памяти имя переменной x, ссылка и уникальный идентификатор (функция id ()). Как это работает?

1 Ответ

2 голосов
/ 18 июня 2020

Это деталь реализации.

Для CPython (обычный ...), фактически даже сам 5 не занимает дополнительного места! прочтите здесь (целые числа от -5 до 256 живут в заранее выделенном массиве).

Также в CPython идентификатор, возвращаемый id - это просто адрес в памяти переменной, поэтому он также не требует дополнительной памяти для «сохранения».

Что касается самих переменных, они, скорее всего, занимают некоторое место в некоторая таблица символов, которая должна помнить их привязку.

...