拼写纠错python代码

from nltk import *from nltk.corpus import brown#每次访问数据需要添加数据至路径当中corpus = brown.sents()#.sent()整个语料库中的句子,sents(fileids=[f1,f2..],categories=[c1,c2...])import numpy as np# 读入字典#set() 函数创建一个无序不...
摘要由CSDN通过智能技术生成
from nltk import *
from nltk.corpus import brown
#每次访问数据需要添加数据至路径当中
corpus = brown.sents()
#.sent()整个语料库中的句子,sents(fileids=[f1,f2..],categories=[c1,c2...])
import numpy as np


# 读入字典
#set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等
vocabs = set([lines.rstrip() for lines in open('vocab.txt')])


# 生成最短编辑距离的正确单词
# 1.生成候选集合和候选项
def generate1(wrong_word):
    letters = {
   'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u',
               'v', 'w', 'x', 'y', 'z'}
    right_word_split = [[wrong_word[:i], wrong_word[i:]] for i in range(len(wrong_word) + 1)]  # 集合没有切片操作
    insert = {
   R + M + L for R, L in right_word_split for M in letters}  # 使用}为集合,使用[为list
    replace = {
   R + M + L[1:] for R, L in right_word_split 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值