У меня есть основной список всех терминов и много дочерних списков (все они хранятся в файле, и я читаю их из файла), этот список в файлах выглядит так, как я написал их ниже.Я хочу найти перевернутый список, т. Е. Отсутствие вхождения элемента в другом документе.
masterList={ 'token1' : 30, 'token2' : 28, 'token3' : 27, 'token4' : 26, 'token5' : 24, 'token6' : 20, 'token7' : 19, 'token8' : 18, 'token9' : 15, 'token10' : 12, 'token11' : 10, 'token12' : 6}
idFCount={ 'token1' : 0, 'token2' : 0, 'token3' : 0, 'token4' : 0, 'token5' : 0, 'token6' : 0, 'token7' : 0, 'token8' : 0, 'token9' : 0, 'token10' : 0, 'token11' : 0, 'token12' : 0}
childList1={ 'token1' : 6, 'token2' : 6, 'token3' : 3, 'token6' : 3, 'token7' : 2, 'token11' : 1, 'token12' : 1}
childList2={ 'token1' : 10, 'token2' : 3, 'token3' : 1, 'token12' : 1}
childList3={ 'token4' : 8, 'token6' : 7, 'token8' : 7, 'token9' : 3, 'token10' : 2, 'token11' : 2, 'token12' : 1}
childList4={ 'token1' : 9, 'token5' : 6, 'token6' : 5, 'token8' : 3, 'token7' : 3, 'token9' : 1, 'token12' : 1}
directoryList=['childList1' , 'childList2', 'childList3', 'childList4']
for directoryName in directoryList :
for elements in directoryName.items() :
print (elements)
idFCount[element[0]]=idFCount[element[0]]+1
Из приведенного выше вопроса я хочу вывод, например:
idFCount={ 'token1' : 3, 'token2' : 2, 'token3' : 2, 'token4' : 1, 'token5' : 1, 'token6' : 3, 'token7' : 2, 'token8' : 2, 'token9' : 2, 'token10' : 1, 'token11' : 2, 'token12' : 4}
Но когда я делаюя получаю неправильное значение
Примечание: в приведенном выше коде каталог directoryList не работает, но в оригинальном я загружаю страницы
docTypetermfrequency = open(directoryName, 'rb')
fileTermFreq = pickle.load(docTypetermfrequency)
for elements in fileTermFreq.items() :
idFCount[elements[0]]=idFCount[elements[0]]+1
Вы можете найти весь код и входной файл вывода здесь.