这是什么情况呀?有兄弟帮忙解答一下吗
target_list = {}
for ks in key_sentences:
# print ks
words = T.postag(ks)
for w in words:
# print "====="
# print w.word
if w.flag == ("nr"):
if w.word not in target_list:
target_list[w.word] += 1
else:
target_list[w.word] = 1
Traceback (most recent call last):
File "D:/IJspace/QA-Snake-master/QA/MainProgram.py", line 102, in
ans = search_summary.kwquery(input_message)
File "D:\IJspace\QA-Snake-master\QA\QACrawler\search_summary.py", line 262, in kwquery
target_list[w.word] += 1
KeyError: '释永信'
以下答案引用自GPT-3大模型,请合理使用:
:
KeyError表示字典中没有该键值(key),具体的解决方法取决于python程序的具体实现,但可以大致分为两种:
1、当你需要获取的键值(key)不一定存在时,可以使用字典的get()方法。即使在字典中没有找到该键值(key)也不会抛出异常,而是返回None:
target_list.get(w.word, 0) # 若字典存在该键值,则返回其值;不存在则返回0
2、当你需要获取的键值(key)必须存在时,可以使用setdefault()方法,该方法在字典中没有找到该键值(key)时,会自动添加该键值(key)及相应的值(value):
target_list.setdefault(w.word, 0) # 若字典存在该键值,则返回其值;不存在则添加键值并返回0
如果我的回答解决了您的问题,请采纳我的回答
for ks in key_sentences:
# print ks
words = T.postag(ks)
for w in words:
# print "====="
# print w.word
if w.flag == ("nr"):
if w.word not in target_list:
target_list[w.word] = 1
else:
target_list[w.word] += 1
有帮助的话,请点采纳~