def get_sent_score(TFISF_scores, text_sents, doc_info):
"""
This function prints out the summary and return the score of arch sentence in a list.
the score of a sentence is calculated by adding the TFIDF scores of the words that make up sentence.
"""
sentence_info=[]
for doc in doc_info:
"""
This loops through each document (sentence) and calculate their 'sent_score'
"""
sent_score=0
for i in range (0, len(TFISF_scores)):
temp_dict = TFISF_scores[i]
if doc ['doc_id']==temp_dict['doc_id']:
sent_score += temp_dict['TFISF_score']
temp = {'doc_id':doc['doc_id'],
'sent_score':sent_score,
'sentence':text_sents[doc['doc_id']-1]}
sentence_info.append(temp)
return sentence_info
sentence_info = get_sent_score(TFISF_scores, text_sents, doc_info)
print(sentence_info)
Copy comment: the error message is
sent_score += temp_dict['TFISF_score'] KeyError: 'TFISF_score'
Добро пожаловать в StackOverflow. Пожалуйста, опишите вашу проблему, а также ваш вклад и ожидаемый результат. Чтение Как спросить и создать минимальный, полный и проверяемый пример может стать отличной отправной точкой.
Ошибка ключа возникает, когда в словаре нет указанного ключа и если вы пытаетесь получить к нему доступ. У вас есть несколько словарей здесь. Нелегко решить, увидев код. Пожалуйста, опубликуйте ошибку.
сообщение об ошибке send_score += temp_dict['TFISF_score'] KeyError: 'TFISF_score'
Очевидно, что вызывающий нарушение ключ не существует в соответствующем словаре. Мы не можем сказать вам, почему его не существует; это зависит от всей остальной логики в вашем коде.
@isabelle: в 'TFISF_score' есть ключ нетtemp_dict. Сделайте print(temp_dict.keys()), чтобы увидеть все ключи.
Было бы неплохо отладить код с помощью набора функций печати, в том числе, например. печать всех ключей словаря: print(list(temp_dict.keys())) непосредственно перед тем, как это должна сделать строка-нарушитель.
хорошо, большое спасибо за все ответы. я отремонтировал его. также есть кое-что, что я хочу спросить снова. вы все передаете некоторые данные с плавающей запятой в другую функцию в python?






Пожалуйста, будьте более конкретными, поделившись сообщением об ошибке.