Я хотел бы иметь возможность рассчитать количество байтов, занимаемых моим словарем при запуске моего кода с интерпретатором PyPy. Я заранее не знаю, какими будут ключи словаря, и не знаю, какими будут значения этих ключей. Вот что я знаю:
- Все ключи будут иметь тип
string
- Количество ключей неизвестно
- Все значения будут иметь тип
string
, int
, double
или None
Я понимаю, что нет прямых альтернатив sys.getsizeof()
на основании объяснения, приведенного в сообщении об ошибке. Ответы, представленные здесь , по большей части, связаны с итеративными решениями, которые так или иначе реализуют sys.getsizeof()
.
Записи для словаря загружаются из файла JSON, поэтому они выглядят как некоторые разновидности этого формата:
{'a': 'hello', 'b': None, 'c': 20, 'd': 20.5}
Есть ли способ, которым я могу вычислить количество байтов, представляемых этим объектом, без использования sys.getsizeof()
? Мне трудно найти решение, и я надеюсь кое-что понять здесь.