0

我正在处理python中的NLP。有一个用于土耳其语的 NLP 工具,即 Zemberek。但它是用java编写的。所以我必须使用 jython 才能导入这些类。我安装了 jython 2.7。另外,我安装了 Eclipse Mars 作为 java 的 IDE。在 Internet 上,我找到了在 IDE 中使用 Jython 的以下链接。我安装了 PyDev 并按照链接中的说明正确配置它。

http://www.jython.org/jythonbook/en/1.0/JythonIDE.html

import sys
import os

import java.lang.System.out
import java.util.Arrays
import java.util.List

zembereksourcedir = ?

sys.path.append(zembereksourcedir +'/jar/zemberek-tr-2.1.1.jar')
sys.path.append(zembereksourcedir +'/jar/zemberek-cekirdek-2.1.1.jar')

from net.zemberek.erisim import Zemberek
from net.zemberek.tr.yapi import TurkiyeTurkcesi

zemberek = Zemberek(TurkiyeTurkcesi())
for st in ["ebeni","ırz"]:
    kok = zemberek.kokBulucu().kokBul(st) # array(net.zemberek.yapi.Kok, [ev ISIM , evli ISIM ])
    print str(list(kok))
    k = str(list(kok)).split()[0][1:]
    print k

上面给出了我尝试运行的代码。(可以在以下链接中找到https://gist.github.com/ferayebend/5331379)但问题是,即使我正确指定了路径,它也会给出错误.

ImportError: No module named Zemberek

我正确地应用了这些步骤来创建项目,这也在上面的链接中进行了说明。但我仍然无法解决问题。任何帮助将非常感激。

4

1 回答 1

0

与其将其添加到 sys.path,不如将其作为库添加到 Jython 解释器配置(窗口 > 首选项 > pydev > 解释器 > jython 解释器 > 新 jar/zip(s))中,或者如果它位于项目,右键单击项目 > 属性 > pydev - pythonpath > 外部库 > 添加 zip/jar/egg.

原因是仅添加到 sys.path 不起作用,您还需要将这些 jar 添加到 CLASSPATH 以便 java/jython 找到它(如果您以正确的方式指定它,PyDev 将为您完成)。

于 2016-01-04T10:02:28.850 回答