百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
E

editdistance

> 编程语言
开源

快速实现编辑距离(Levenshtein 距离)

705 stars0 点赞2 次浏览
访问官网GitHub

工具介绍

快速实现编辑距离(Levenshtein 距离)

editdistance

快速实现编辑距离(Levenshtein 距离)。 此库仅使用 C++ 和 Cython 实现 Levenshtein 距离。 本库中使用的算法是由

二进制车轮

这要归功于 pypa/cibuildwheel Linux、Mac OS 和 Windows 上都有二进制车轮。

安装

您可以通过 pip 安装:

bash
pip install editdistance

使用方法

很简单:

python
import editdistance
editdistance.eval('banana', 'bahama')
# 2L

简单基准测试

使用 IPython,我尝试了几个库:

  • pyxDamerauLevenshtein
  • pylev
  • Python-Levenshtein 在 Python 2.7.5 中:
python
a = 'fsffvfdsbbdfvvdavavavavavava'
b = 'fvdaabavvvvvadvdvavavadfsfsdafvvav'
import pylev
timeit pylev.levenshtein(a, b)
# 100 loops, best of 3: 7.48 ms per loop

from pyxdameraulevenshtein import damerau_levenshtein_distance
timeit damerau_levenshtein_distance(a, b)
# 100000 loops, best of 3: 11.4 µs per loop

timeit editdistance.eval(a, b)  # my library
# 100000 loops, best of 3: 3.5 µs per loop

import Levenshtein

timeit Levenshtein.distance(a, b)
# 100000 loops, best of 3: 3.21 µs per loop

与任何物体的距离

上述库仅支持字符串。但有时还支持其他类型的对象,如字符串列表(单词)。我支持任何可迭代对象,只需要其可哈希的对象:

Heikki Hyyrö, "Explaining and extending the bit-parallel approximate string matching algorithm of Myers", (2001)

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C++

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言