Чи є посилання на розмір пам'яті структури даних Python на 32- та 64-бітних платформах?
Якщо ні, то було б непогано мати це на SO. Чим вичерпніше, тим краще! То скільки байтів використовується наступними структурами Python (залежно від типу len
та вмісту, якщо це доречно)?
int
float
- довідник
str
- unicode рядок
tuple
list
dict
set
array.array
numpy.array
deque
- об’єкт класів нового стилю
- об’єкт класів у старому стилі
- ... і все, що я забуваю!
(Для контейнерів, які містять лише посилання на інші об'єкти, ми, очевидно, не хочемо самі рахувати розмір елемента, оскільки він може бути загальним.)
Крім того, чи є спосіб отримати пам'ять, яку використовує об'єкт під час виконання (рекурсивно чи ні)?
a
використовуйте a.nbytes
.