Я пытаюсь понять причину следующего MemoryError. Есть ли какой-либо предопределенный предел для словарей в python?Python Dictionary Размер Максимальный предел
self.text длинная строка, считанная из файла (около 4,5 MB) L равна 4641652
L = len(self.text)
test = {}
for i in xrange(L,0,-1):
try:
test[i] = self.text[i-1:]
except MemoryError:
print "Memory Error at the " + str(i) +"th iteration!"
print sys.getsizeof(test)
print len(test)
exit()
Выход
Memory Error at the 4577890th iteration!
1573004
63762
Я запустившего программу на машине окон с 16 гб бара, если это помогает.
Что вы не понимаете? У вас не хватает памяти. Мы можем сказать больше, поскольку мы понятия не имеем, что такое я, текст, L и т. Д. – Marcin
Wow быстрый ответ @Marcin. Я был в процессе редактирования моего вопроса, чтобы ответить на этот вопрос. –
yeh. обычно ppl читает вопросы в тот момент, когда они появляются. Так что его довольно быстро :-) – Marcin