Я хотел бы иметь возможность иметь ряд вложенных циклов, использующих один и тот же файл pickle. Смотрите ниже:
def pickleRead(self):
try:
with open(r'myfile', 'rb') as file:
print 'Reading File...'
while True:
try:
main = pickle.load(file)
id = main[0]
text = main[1]
while True:
try:
data = pickle.load(file)
data_id = data[0]
data_text = data[1]
coefficient = Similarity().jaccard(text.split(),data_text.split())
if coefficient > 0 and data_text is not None:
print str(id) + '\t' + str(data_id) + '\t' + str(coefficient)
except EOFError:
break
except Exception as err:
print err
except EOFError:
break
print 'Done Reading File...'
file.close()
except Exception as err:
print err
Второй (внутренний) цикл выполняется без проблем, но первый просто выполняет одну итерацию, а затем останавливается. Я пытаюсь получить одну строку за раз, а затем сравнить ее со всеми строками в файле. Есть несколько тысяч строк, и я обнаружил, что модуль cPickle выполняет что-то подобное. Проблема в том, что оно ограничено в том, что подвергается Кто-нибудь может указать мне правильное направление?