跳转到主要内容

Snowball-to-Python编译器

项目描述

sbl2py 将用 Snowball 字符串处理语言编写的代码转换为 Python

import sbl2py
import sbl2py.utils

sbl_code = """
externals ( stem )
define stem as (
    backwards ( ['ly'] delete )
)
"""
py_code = sbl2py.translate_string(sbl_code)
module = sbl2py.utils.module_from_code('demo_module', py_code)
print module.stem('fabulously')

输出

fabulous

功能

sbl2py 应支持所有常用的Snowball功能。特别是,支持Snowball stemmer包中使用的所有分词算法的功能。

安装

使用 pip 安装 sbl2py 很简单。

pip install sbl2py

使用方法

将Snowball文件转换为Python模块的最简单方法是在自动安装的 sbl2py 中使用 sbl2py 脚本。

sbl2py SNOWBALL_FILE PYTHON_FILE

有关可用选项,请参阅 sbl2py --help

您还可以在Python中使用 sbl2py sbl2py 模块提供两个函数,可以将Snowball代码从字符串( translate_string )或文件( translate_file )转换为相应的Python源代码作为字符串。如果您想执行代码,只需使用 sbl2py.utils 模块的 module_from_code 函数即可。

生成的Python模块导出了原始Snowball代码中在externals部分列出的所有例程。也就是说,如果您在Snowball代码中有externals ( stem ),并将生成的Python模块存储在名为mystemmer.py的文件中,那么您可以如下调用stem例程:

import mystemmer
print mystemmer.stem('foobar')

许可证

sbl2py遵循MIT许可证。Snowball源代码和测试目录中的单词列表遵循BSD-3许可证。请参阅LICENSE文件以获取详细信息。

项目详情


下载文件

下载适合您平台的文件。如果您不确定该选择哪个,请了解更多关于安装软件包的信息。

源代码分布

sbl2py-0.1.0-2.tar.gz (17.2 kB 查看散列值)

上传时间 源代码

由以下支持