python拼写检查_Python 怎样写一个拼写检查器
例子import?re,?collections????def?words(text):?return?re.findall('[a-z]+',?text.lower())?????def?train(features):??????model?=?collections.defaultdict(lambda:?1)??????for?f?in?features:??????????model[f]?+=?1??????return?model????NWORDS?=?train(words(file('big.txt').read()))????alphabet?=?'abcdefghijklmnopqrstuvwxyz'????def?edits1(word):??????n?=?len(word)??????return?set([word[0:i]+word[i+1:]?for?i?in?range(n)]?+?????????????????????#?deletion?????????????????[word[0:i]+word[i+1]+word[i]+word[i+2:]?for?i?in?range(n-1)]?+?#?transposition?????????????????[word[0:i]+c+word[i+1:]?for?i?in?range(n)?for?c?in?alphabet]?+?#?alteration?????????????????[word[0:i]+c+word[i:]?for?i?in?range(n+1)?for?c?in?alphabet])??#?insertion????def?known_edits2(word):??????return?set(e2?for?e1?in?edits1(word)?for?e2?in?edits1(e1)?if?e2?in?NWORDS)????def?known(words):?return?set(w?for?w?in?words?if?w?in?NWORDS)????def?correct(word):??????candidates?=?known([word])?or?known(edits1(word))?or?known_edits2(word)?or?[word]??????return?max(candidates,?key=lambda?w:?NWORDS[w])
閱讀全文 >
總結
以上是生活随笔為你收集整理的python拼写检查_Python 怎样写一个拼写检查器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql表jiayi_MySQL Me
- 下一篇: linux 查看ntp版本号_如何让Li