Минимально возможное пространство составляет 8 байтов на целое число (они никогда не превышают 64 бита) + 16 байтов, что составляет 40 байтов. в целом.
Можно ли уменьшить пространство почти до 40 байт на кортеж?
Вот MWE, который создает фальшивые случайные значения данных и измеряет размер конечной структуры данных в байтах.
Код: Выделить всё
from random import randint, choice
from string import printable
from heapq import heappush
ascii = printable[:-5]
pq = []
for _ in range(10000000):
heappush(pq, (randint(0, 31), randint(0, 31),randint(0,31),''.join(choice(ascii) for _ in range(16))))
Можно ли уменьшить его почти до 400 МБ?
Подробнее здесь: https://stackoverflow.com/questions/792 ... rity-queue
Мобильная версия