Есть ли ссылка на размер памяти структуры данных Python на 32- и 64-битных платформах?
Если нет, было бы неплохо иметь его на SO. Чем полнее, тем лучше! Итак, сколько байтов используется следующими структурами Python (в зависимости от len
типа содержимого и, если это необходимо)?
int
float
- ссылка
str
- строка Юникода
tuple
list
dict
set
array.array
numpy.array
deque
- объект классов нового стиля
- объект классов в старом стиле
- ... и все, что я забываю!
(Для контейнеров, которые хранят только ссылки на другие объекты, мы, очевидно, не хотим подсчитывать размер самого элемента, поскольку он может быть общим.)
Кроме того, есть ли способ получить память, используемую объектом во время выполнения (рекурсивно или нет)?
a
используйте a.nbytes
.