Python Lemmatizing输入列表,返回输出列表

时间:2017-05-02 21:38:24

标签: python lemmatization

我有一个包含字符串的列表,我正在引理它。虽然我可以对所有字符串进行词形变换,但是我很难按照我输入到词形变换器的相同列表格式返回被词形化的字符串。

做一个每个输出的类型,我得到一个unicode和str对象。我尝试将unicode转换为字符串并尝试将字符串连接到列表但没有运气。

以下是可重现的代码:

typea = ['colors', 'caresses', 'ponies', 'presumably', 'owed', 'says']
for i in xrange(0,len(typea)):
    # Lemmatize the words
    lemmatized_words = lmtzr.lemmatize(typea[i])
    print lemmatized_words

    #Output obtained: 
    color
    caress
    pony
    presumably
    owed
    say
    #Desired output
    #['color', 'caress', 'pony', 'presumably', 'owed', 'say']

1 个答案:

答案 0 :(得分:1)

lmtzr.lemmatize接受一个字符串并返回一个字符串。所以lemmatized_words一次只能是一个字符串。

要将所有单词变形并将它们存储在列表中,您需要这样的内容:

typea = ['colors', 'caresses', 'ponies', 'presumably', 'owed', 'says']
lemmatized_words = [lmtzr.lemmatize(x) for x in typea]
print lemmatized_words