使用 difflib 查找两个字符串变量之间最接近的匹配项

Find the closest match between two string variables using difflib

))大家好,我想使用 difflib 找到两个字符串变量之间最接近的匹配,这是我的情况...

varA = 'plainmountain'
varB = 'skymountain'

newVarA = 'piaimauntain'

我想difflib在VarA和VarB变量中找到最接近的匹配(它们只是变量,不是列表),如果我在搜索中添加第三个变量varC怎么办???我怎样才能让 difflib 找到一个最接近的匹配项。

目前我正在尝试这个...

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

感谢高级。

如果我理解了您的任务,将会有所帮助:

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