rust'fst'crate的python绑定,提供由有限状态传感器支持的集合和映射。

rust-fst的Python项目详细描述


appveyor
travis
用于burntsushi’sfst crate的python绑定 (rustdocs
用于支持fst的集合和映射。
有关您可能要考虑使用它的原因,请参阅Burntsushi的 很好

tl;dr

  • 使用大于内存集的文件
  • 使用Levenshtein自动机执行模糊搜索

安装

  • 您需要:
    • python>;=3.3,python或pypy>;=2.7,带有开发头 已安装
    • 每晚生锈(通过rustup安装)
  • 克隆存储库。使用pip install git+...进行安装 不工作 目前
  • 运行rustup override add nightly为rustup添加覆盖 使用 存储库的夜间频道
  • 运行python setup.py bdist_wheel生成轮子
  • 安装车轮时 pip install dist/rust_fst-0.1-py3-none-any.whl

状态

这个包公开了fstcrate的几乎所有功能, 除了:

  • 将切片结果searchsearch_re与 设置操作
  • 使用原始传感器

示例

fromrust_fstimportMap,Set# Building a set in memorykeys=["fa","fo","fob","focus","foo","food","foul"]s=Set.from_iter(keys)# Fuzzy searches on the setmatches=list(s.search(term="foo",max_dist=1))assertmatches==["fo","fob","foo","food"]# Searching with a regular expressionmatches=list(s.search_re(r'f\w{2}'))assertmatches==["fob","foo"]# Store map on disk, requiring only constant memory for queryingitems=[("bruce",1),("clarence",2),("stevie",3)]m=Map.from_iter(items,path="/tmp/map.fst")# Find all items whose key is greater or equal (in lexicographical sense) to# 'clarence'matches=dict(m['clarence':])assertmatches=={'clarence':2,'stevie':3}

文档

前往readthedocs.org寻找 API文档。

如果您想了解更多有关性能特征、内存的信息 用法
关于实现细节,请转到

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

推荐PyPI第三方库


热门话题
java Cassandra复制因子大于节点数   java J2EE JTA事务回滚不适用于OSE Glassfish 4.0(Build 89)   java spring安全预认证用户登录   org的java类文件。反应流。从RxJava编译示例时未找到Publisher?   java在使用dataFormat作为POJO通过Camel调用Web服务时无法设置SOAP标头   Javafx类的java静态实例   java如何防止一个部件在关闭时覆盖另一个部件的位置   sql server无法从我的java代码连接到数据库   java在JList(Swing)中显示带有的ArrayList   从Java中的CXF服务获取WSAddressing数据   使用资产文件夹进行java简单json解析(本地)   java LDAPException未绑定的无效凭据   JavaJSFspring部署到weblogic   JAVA中字符数组中的特定元素排列?   如果脚本位于不同的目录中,则ant不会使用exec标记运行Javashell脚本