使用 difflib 查找两个字符串变量之间的最接近匹配 [英] Find the closest match between two string variables using difflib
本文介绍了使用 difflib 查找两个字符串变量之间的最接近匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
)) 大家好,我想使用 difflib 找到两个字符串变量之间最接近的匹配,这是我的情况...
))Hi all, I would like to find the closest match between two string variables using difflib, this is my case...
varA = 'plainmountain'
varB = 'skymountain'
newVarA = 'piaimauntain'
我想通过 difflib 在 VarA 和 VarB 变量中找到最接近的匹配(它们只是变量,不是列表),如果我在搜索中添加第三个变量 varC
会怎样????我怎样才能让 difflib 找到一个最接近的匹配项.
I would like to difflib to find the closest match in VarA and VarB variables (they are just variables, not a list), what if I add a third variable varC
in the search??? How could I get difflib to find a single closest match.
目前我正在尝试这个...
Currently Im trying this...
varA = 'plaimountain'
varB = 'skymountain'
varAll = [varA, varB, varC]
newVarA = 'piaimauntain'
我是这样做的...
import difflib
d = difflib.Differ()
diff = d.compare(varA, newVarA)
print '\n'.join(diff)
现在我这样做...
from difflib import SequenceMatcher
result = difflib.get_close_matches(newVarA, varAll, 1, 0.7)
print result
感谢高级.
推荐答案
如果我理解你的任务,它会有所帮助:
If I understand your task it will help:
import difflib
varA = 'plaimountain'
varB = 'piaimauntain'
varC = 'skymountain'
varS = ['piaimauntain','sky','skymountain','dog','231']
#it parse varB by letters
best = difflib.get_close_matches(varA, varB)
print best
best = difflib.get_close_matches(varA, [varB])
print best
best = difflib.get_close_matches(varA, [varB,varC])
print best
best = difflib.get_close_matches(varA, [varB,varS])
print best
这篇关于使用 difflib 查找两个字符串变量之间的最接近匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文