尝试创建拼写检查程序,算法无法正常工作。

时间:2016-05-26 03:21:48

标签: python spell-checking

我正在尝试编写我自己的拼写检查算法,该算法也打印出建议。它不是按预期工作,我不知道为什么。我可以拾取拼写错误的单词,但我不能建议好的单词。这里是我的代码到目前为止:

def corrections_helper(word, testWord):
    count = 0
    charCount = 0
    for char in word:
        if char in testWord:
            charCount += 1
    if charCount >= int(len(testWord) / 1.5):
        for n in range(0, len(testWord)):
            if word[n] != testWord[n]:
                count += 1
    return count

def corrections(item, trieLi):
    suggestions = []
    count = 0
    for word in trieLi:
        if len(word) == len(item):
            if corrections_helper(word, item) <= 3:
                suggestions.append(word)
    print(suggestions)

使用“propensities”这个词错误地拼写为“propensiteis”,我的随机输出不是我想要的。例如:

['walesordered', 'wigglesworth', 'unsuccessful', 'unfavourable', 'unfrequently', 'undertakings', 'unacquainted', 'unacceptable', 'unaccustomed', 'unproductive', "king'sfisher", 'buffcoloured', 'buryingplace', 'bronzewinged'...

还有许多不应该出现的其他词语。我哪里错了?我甚至不知道正确的单词是否出现在返回值的大列表中。数百人回来了,但他们都没有接近。

0 个答案:

没有答案