擅长:python、mysql、java
<p>您可以使用内置的Ratcliff和Obershelp算法:</p>
<pre><code>def is_similar(first, second, ratio):
return difflib.SequenceMatcher(None, first, second).ratio() > ratio
first = ['bercelona', 'emstrdam', 'Praga']
second = ['New York', 'Amsterdam', 'Barcelona', 'Berlin', 'Prague']
result = [s for f in first for s in second if is_similar(f,s, 0.7)]
print result
['Barcelona', 'Amsterdam', 'Prague']
</code></pre>
<p>其中0.7为相似系数。它可能会对您的案例进行一些测试并设置此值。它显示了两个字符串有多相似(1-是同一个字符串,0-非常不同的字符串)</p>