7

我有 2 个查询:

    query1:你好世界
    query2:你好

当我使用 python 库 Levenshtein 运行此代码时:

from Levenshtein import distance, hamming, median
lev_edit_dist = distance(query1,query2)
print lev_edit_dist

我得到 12 的输出。现在的问题是值 12 是如何得出的?

因为就笔画差异而言,肯定不止12个。

4

1 回答 1

4

根据其文档,它支持 unicode:

它支持普通字符串和 Unicode 字符串,但不能混合使用,函数(方法)的所有参数必须是相同类型(或其子类)。

不过,您需要确保中文字符是 unicode:

In [1]: from Levenshtein import distance, hamming, median

In [2]: query1 = '你好世界'

In [3]: query2 = '你好'

In [4]: print distance(query1,query2)
6

In [5]: print distance(query1.decode('utf8'),query2.decode('utf8'))
2
于 2015-06-19T00:36:40.573 回答