2

我正在编写一个脚本,以从我从 URL 转换的文本文件中提取相关标签。当我应用词干分析器时,脚本的一部分给了我错误,代码如下

def __call__(self, tag):
    '''
    @param tag: the tag to be stemmed

    @returns: the stemmed tag
    '''

    string = self.preprocess(tag.string)
    tag.stem = self.stemmer.stem(string)
    return tag 

错误如下

Type Error - stem() missing 1 required positional argument : 'word'

导致错误的行是

tag.stem = self.stemmer.stem(string)

我正在使用 Python,如果有人可以帮助我修改代码以消除错误,请。

4

2 回答 2

2

我认为你没有实例化self.stemmer,即

class stemmer(object):
    def stem(self, word):
        print('stem')

obj = stemmer 
obj.stem("word")

这将导致相同的错误,因为Class不会将self参数传递给方法,因此您需要实例化词干分析器

obj = stemmer()
obj.stem("word")
于 2018-09-30T08:46:14.023 回答
0

初始化ps=PorterStemmer()时,请检查大括号是否正确。

于 2019-12-03T13:25:10.377 回答