生成的错误是:
File "/home/tweet_v8/tweetSum/Summarizer/Sentence.py", line 42, in _tfIdfSentence
w.append( self.lsa.getCell(doc, self.vectorSpace.keywords()[(term,)]) )
KeyError: (u'l.a.',)
函数如下所示:
^{pr2}$我不知道这行代码有什么问题。在
w.append( self.lsa.getCell(doc, self.vectorSpace.keywords()[(term,)]) )
有人知道怎么解决这个问题吗?在
您遇到的错误被称为
^{1}$KeyError
,这是有原因的,如果没有可复制的代码示例,我们就无法理解您做错了什么。但是,一个人可以向你解释KeyError
是什么:你看,你拥有的是一个字典,或者通常被称为哈希映射。现在,当一个键不存在于哈希映射中时,您将得到一个
KeyError
。在给您一个
KeyError
,因为搜索到的dict键(u'l.a.',)
在self.vectorSpace.keywords()
字典中找不到。在若要避免
^{1}$KeyError
,请使用dict
的get()
来设置一个默认值,如果您要搜索的键不存在:您可以将
'default'
替换为所需的任何值。在另一种方法是使用defaultdict。在
KeyError: (u'l.a.',)
Python告诉您unicode类型的键(字典的键/值对的)“l.a.”不存在。在
如果您只想将其设置为某个,可以将其包装在try/except keyror中。在
相关问题 更多 >
编程相关推荐