擅长:python、mysql、java
<p>为了找到字符串之间的相似性,有很多种算法,Python有一个名为<a href="https://pypi.org/project/textdistance/" rel="nofollow noreferrer">textdistance</a>的库,其中包含所有算法</p>
<p>我将根据您的要求使用Jaccard距离。您需要根据需要决定算法</p>
<pre><code>import textdistance as td
similarity_perc = [td.jaccard.normalized_similarity(my_string, s) for s in my_list]
</code></pre>
<p>每个字符串的相似性百分比</p>
<pre><code>[0.22, 1.0, 0.42]
</code></pre>
<p>获取最相似字符串的索引</p>
<pre><code>most_similar_index = similarity_perc.index(max(similarity_perc))
# Omitted not found check. Please do it yourself.
print(my_list[most_similar_index])
</code></pre>
<p>输出</p>
<pre><code>apple
</code></pre>
<p>如果您希望将textdistance与其他库的基准测试用于大型数据集,则会给出<a href="https://github.com/life4/textdistance#benchmarks" rel="nofollow noreferrer">here</a></p>