hfst的python接口

hfst的Python项目详细描述


hfst包含HFST的python绑定 (赫尔辛基有限状态技术)C++库。HFST工具包用于 处理自然语言形态。该工具包由 多种语言的广泛覆盖实现 形态复杂度。

要求

对于windows和mac os x,我们在pypi上提供二进制轮子。车轮可用 对于python版本2.7、3.4、3.5和3.6。 windows的轮子是32位的;它们还需要32位的 python才能正常工作。mac的轮子被编译为通用二进制文件 这在32位和64位环境中都有效。OS X必须为10.6或更高。

对于linux,我们只提供pypi上的源代码。也可以安装hfst 使用Debian二进制软件包。如果环境支持debian,这是推荐的方法。 从源编译HFST需要一个C++编译器(用GCC 5.4.0测试) 用于Python的C++编译器和StUpToUp包的Read Load和GETLink库 (使用版本28.8.0测试)不再需要Swig,因为预生成的文件 包含在源分发中。

通过PYPI安装

我们建议使用pip工具安装Windows和OS X。 pip也适用于Linux,但所有内容都将从 来源在安装之前,请确保满足标题“需求”下给出的依赖项

对于python版本3,pip工具通常命名为pip3,通常使用的是pip。 对于python版本2基本安装使用:

pip3 install [--upgrade] hfst

pip install [--upgrade] hfst

从Python3.4.0和2.7.9开始,默认情况下包括PIP 可以通过python调用,选项为-m pip

python3 -m pip install [--upgrade] hfst

python -m pip install [--upgrade] hfst

上面的命令在shell/terminal/command提示符下运行,但是它们可以 也可以在python命令行或通过图形用户界面运行 (例如idle)使用pip.main,它接受列表中的参数:

import pip
pip.main(['install','--upgrade','hfst'])

选项--upgrade确保将安装最新版本的hfst 替换所有已安装的早期版本。选项--verbose 将显示安装过程中发生的情况这在从源代码编译时非常有用

使用Debian软件包安装Linux

获取最新的debian版本(对于python版本3命名为python3-libhfst,对于python版本2命名为python-libhfst) 从Apertium安装并使用

dpkg --installpython[3]-libhfst_***.deb

选择正确的包时,命令lsb_release -a可能会有所帮助。 例如,它将打印类似于

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.2 LTS
Release:        16.04
Codename:       xenial

在本例中,行代码名显示正确的包的格式是*~xenial1_*.deb

命令file /usr/bin/file是检查系统是64位还是32位的一种方法。它将打印如下内容:

/usr/bin/file: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked ...

在上面的例子中,以amd64.deb结尾的包是正确的选择。

从头开始编译

<>也可以从头开始编译HFST C++库和Python绑定。 克隆或下载我们的Github repository和 请参阅python子目录的README

文件

请参见基于wiki的package documentation 在我们的github页面上。在python中,还可以使用dirhelp 命令,例如:

dir(hfst)

help(hfst.HfstTransducer)

许可证

hfst是根据gnu gpl 3.0版授权的。

故障排除

(在下面的命令中,python[3]表示pythonpython3,具体取决于您使用的python版本; 对pip[3]也一样,意思是pippip3

pip开始从源代码编译,尽管有可用的控制盘:

尝试使用升级pip

pip[3] install --upgrade pip

python[3] -m pip install --upgrade pip

阿诺特她的理由可能是 pypi上的源包比 给定环境的相应轮子通过我们的 issue tracker所以一个新的轮子 将被创建

错误消息“命令…失败,错误代码…”:

尝试在详细模式下使用

pip[3] install --verbose[--upgrade] hfst

python[3] -m pip install --verbose[--upgrade] hfst

以获取更多信息

错误消息“错误:无法删除…:权限被拒绝”:

您没有足够的权限安装软件包。在Mac和Linux上,尝试 使用

作为超级用户安装

sudo pip[3] install [--upgrade] hfst

sudo python[3] -m pip install [--upgrade] hfst

在windows上,通过右键单击重新打开command prompt/python command line/idle 选择“以管理员身份运行”,然后再次运行pip。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何忽略缓冲读取器中在“”之后的行的其余部分,或行上的特定字符?   java在db中创建空对象或稍后保存   java如何实现UI无关的后台工作任务   java未能在Android中从BaseAdapter扩展的类中启动Tactivity?   java斐波那契迭代移动数组[]   安卓从文件读取提供了java。木卫一。StreamCorruptedException:无效的流标头:73720027   java计算矩形中的六边形数?   仅使用Java 1.5(或更早版本)读写XML   java如果所有元素都以相同的bucked结尾,为什么要进行大小调整?   java Apache POI Excel在xx中发现无法读取的内容。xlsx   swing我可以在普通java应用程序中使用GWTGUI吗?   来自自定义Java客户端的http删除请求的行为与邮递员不同   运行批处理文件时,java当前目录无效   使用TypeReference将java字符串转换为ArrayList<STRING>   documentlistener突出显示所有匹配词Java