我在IDLE(Python)上运行以下代码,我想输入阿拉伯语字符串并获取词干,但实际上它不起作用
">>> from nltk.stem.isri import ISRIStemmer
">>> st = ISRIStemmer()
">>> w= 'حركات'
">>> join = w.decode('Windows-1256')
">>> print st.stem(join).encode('Windows-1256').decode('utf-8')
运行它的结果是w中的相同文本,它不是词干
但什么时候做以下事情:
">>> print st.stem(u'اعلاميون')
结果成功并返回词干“علم”
为什么将变量传递给stem()函数却不返回stem。在
上面的代码在Python3中不起作用,因为我们试图解码一个已经解码的对象。所以,不再需要从UTF-8解码了。在
下面是在python3中应该可以正常工作的新代码。在
好的,我自己用以下方法解决了这个问题:
它给出了正确的根,即“حПك”
这里有一种新的光源arabicstemmer是用雪球框架开发的
相关问题 更多 >
编程相关推荐