Я пытался посмотреть на другие вопросы, но не смог найти ответ. Я не понимаю, почему у меня эта ошибка:
File "lexicon_based.py", line 50, in <module>
for word, (pos, neu, neg) in zip(pickle.load(fd)):
ValueError: not enough values to unpack (expected 2, got 1)
Часть кода, где появляется ошибка:
with open("dict_pickle", "rb") as fd:
dico_lexique = {}
for word, (pos, neu, neg) in zip(pickle.load(fd)):
dico_lexique[word] = Sentiment(int(pos), int(neu), int(neg))
Код для создания объекта "dict_pickle", исходный файл имеет не менее 400000 строк:
with codecs.open('lexiconSentiment.txt', 'r', 'Cp1252', errors = 'ignore') as text_file:
text_file =(text_file.read())
#print(text_file)
dico_lexique = ({i.split(";")[1]:i.split(";")[2:] for i in text_file.split("\n") if i}) # Spliting the text content and creating a dictionary
#print(dico_lexique)
#print(type(dico_lexique))
pickle_out = open("dict_pickle", "wb")
pickle.dump(dico_lexique, pickle_out)
pickle_out.close()
как выглядит файл словаря перед использованием pickle:
0;***;21;127;0
1;vraiment;407;156;37
2;oiseau-à-berceau;102;259;0
3;Stoph;95;308;37
4;Conscience;372;144;35
5;rançonnement;0;635;433
6;provenir;304;227;47
7;féliciteur;285;54;1
8;traversée;360;167;38
9;avant toute chose;241;108;34
10;Porcellis;52;276;0
11;Lasker-Schüler;146;284;0
12;discréditer;0;47;866
13;adjuration;300;44;40
14;Besnier-Boeck-Schaumann;0;39;315