用 python 写了个判断字符串相似程度的函数

2016-01-01 10:34:59 +08:00
 luosch

在某个项目中遇到判断字符串相似程度的需求, google 了一下,原来python标准库里面没有这样的函数,反而是 PHP 里面有一个similar_text()函数,果然PHP 是世界上最好的编程语言,于是查看 PHP 源码后把这个函数移植到了 python

安装

pip install similar_text

使用

>>> from similar_text import similar_text
>>> similar_text('swift', 'taylor swift')
58.8235294117647
>>> similar_text('jzm', 'jiangzemin')
46.15384615384615

项目地址: https://github.com/luosch/similar_text

第一次写 pypi 的库,有什么做错的求轻喷

3999 次点击
所在节点    Python
9 条回复
aheadlead
2016-01-01 10:49:12 +08:00
编辑距离!
以前做 OI 的时候入门的 DP 题~
luosch
2016-01-01 10:50:35 +08:00
@aheadlead 编辑距离得到的匹配度不是很准确,所以准备弃用了
imn1
2016-01-01 10:52:11 +08:00
又是重复造轮子?
Kisesy
2016-01-01 10:58:44 +08:00
其实是有的。。。。
import difflib
print(difflib.SequenceMatcher(None, 'jzm', 'jiangzemin').quick_ratio())
virusdefender
2016-01-01 11:39:02 +08:00
icedx
2016-01-01 11:43:03 +08:00
参考 simhash
trdcaz
2016-01-01 16:04:41 +08:00
@Kisesy 正解
DeanThompson
2016-01-01 20:35:49 +08:00
luosch
2016-01-01 21:31:56 +08:00
@DeanThompson 已经被打击惨了😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/247630

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX