Я пишу приложение в Python (2.6), которое требует, чтобы я использовал словарь в качестве хранилища данных.
Мне любопытно, насколько эффективна память с одним крупным словарем, или сломать это на многие (намного) меньшие словари, а затем иметь словарь "индекс", содержащий ссылку на все меньшие словари.
Я знаю, что в целом есть много накладных расходов со списками и словарями. Я где-то читал, что python внутренне выделяет достаточно места, чтобы словарь/список # элементов был равен 2.
Я достаточно новый для python, что я не уверен, есть ли другие неожиданные внутренние сложности/сюрпризы, подобные этому, что не очевидно для обычного пользователя, которого я должен принять во внимание.
Одна из трудностей заключается в понимании того, как сила 2 системы подсчитывает "предметы"? Каждый ключ: пара считается как 1 элемент? Это кажется важным, потому что, если у вас есть 100-тонный монолитный словарь, тогда будет выделено пространство 100 ^ 2 элемента. Если у вас есть 100 однопозиционных словарей (1 ключ: пара), то в каждом словаре будет только распределение 1 ^ 2 (ака без дополнительного выделения)?
Любая четко изложенная информация будет очень полезна!