Я получил MemoryError, когда запускаю следующий код в sl4a на своем HTC Desire:
def load_words():
print "Loading word list from file..."
inFile = open(words.txt, 'r', 0)
wordlist = []
for line in inFile:
wordlist.append(line.strip())
print " ", len(wordlist), "words loaded.\n"
return wordlist
После печати «Загрузка списка слов из файла ...» выдается
Traceback (most recent call last):
File "words.txt", line 92, in <module>
wordlist = load_words()
File "words.txt", line 29, in load_words
for line in inFile:
MemoryError
Кстати, файл "words.txt" содержит 83667 английских слов, размер 633,6 КБ. Помощь приветствуется.
(Код является частью MIT OpenCourseWare, CS 6.00 - введение в информатику и программирование, набор задач 5, ps5_ghost.py)
Возможно, это ошибка в sl4a?
[UPDATE]:
Я попробовал следующее:
def load_words():
print "Loading word list from file..."
inFile = open(words.txt, 'r', 0)
wordlist = []
try:
for line in inFile:
wordlist.append(line.strip())
except MemoryError:
print 'Oops...'
print " ", len(wordlist), "words loaded.\n"
return wordlist
Тогда волшебным образом я получил
Loading word list from file...
Oops...
83667 words loaded.
А остальная часть кода работала нормально. Кто-нибудь знает, что вызвало это?