python的包拼写错误_尝试在Python中使用PyEnchant为拼写错误的单词编写计数器

博主试图使用Python的PyEnchant库创建一个计数器,以检查文章中的拼写错误单词数量。在处理文本并将其转换为小写、去除标点后,遇到运行时错误,导致程序无法正常检查单词拼写。错误信息提示与g_utf8_validate函数有关。代码中包含了读取CSV文件、处理文本、以及使用enchant.Dict进行拼写检查的部分。
摘要由CSDN通过智能技术生成

我正在试着制作一个计数器来告诉我一篇文章中有多少单词是错的。如果支票被退回假,我想加一个计数器。这是我所拥有的

编辑:短文是一系列单词。我写了一篇文章,去掉了标点符号,把所有的字母都改成小写,然后把每个单词列成一个单子。我现在想写一个循环来检查每个单词是否正确。不是的,我想要一个计数器,它会返回多少个单词是错误的

我到处找过了,但不知道该怎么用。我还没找到有效的方法

我得到的错误我运行num_spell_错误行

** (python.exe:7804):CRITICAL**:enchant_dict_check:断言“g_utf8_validate(word,len,NULL)”失败

回溯(最近一次呼叫):

文件“”,第1行,输入

文件“E:\Python27\lib\site packages\spyderlib\widgets\externalshell\网站自定义.py,第538行,在runfile中

execfile(文件名,命名空间)

文件“C:/Documents and Settings/stephen iu beckham/.spyder2/入学.py“,第49行,英寸

num_spel_errs_why=len(whybaylor)-len(过滤器(字典.检查韦伯勒)

文件“E:\Python27\lib\site packages\enchant_yuinit_u.py”,第577行,选中

self.\u raise\u error()

文件“E:\Python27\lib\site packages\enchant_uinit_u.py”,第551行,在“raise”错误中

提升eclass(默认)

附魔。错误。错误:未指定的错误

当我尝试for-word循环时遇到的错误

**(python.exe:7804):CRITICAL**:enchant_dict_check:断言“g_utf8_validate(word,len,NULL)”失败

回溯(最近一次呼叫):

文件“”,第1行,输入

文件“E:\Python27\lib\site packages\spyderlib\widgets\externalshell\网站自定义.py,第538行,在runfile中

execfile(文件名,命名空间)

文件“C:/Documents and Settings/stephen iu beckham/.spyder2/入学.py“,第51行,英寸

如果字典.检查(单词)为假:

文件“E:\Python27\lib\site packages\enchant_yuinit_u.py”,第577行,选中

self.\u raise\u error()

文件“E:\Python27\lib\site packages\enchant_uinit_u.py”,第551行,在“raise”错误中

提升eclass(默认)

附魔。错误。错误:未指定的错误

from __future__ import divisionimport csvimport refrom string import punctuationimport enchant

faithwords = ['church', 'christ', 'faith']

dictionary = enchant.Dict("en_US")

with open('2011ShortAnswers.csv', 'rb') as csvfile:data = csv.reader(csvfile, delimiter=",")writer = csv.writer(open('2011output.csv', 'wb'))

for row in data:

faithcounter = 0

grammercounter = 0

row3 = row[3]

row3 = row3.lower().replace(' ', ' ')

row4 = row[4]

row4 = row4.lower().replace(' ', ' ')

essay1_sentence = re.split('.', row3)

essay2_sentence = re.split('.', row4)

essay1_sentencelen = len(essay1_sentence)

essay2_sentencelen = len(essay2_sentence)

for p in list(punctuation):

row3 = row3.replace(p, '')

row4 = row4.replace(p, '')

essay1 = re.split(' ', row3)

essay2 = re.split(' ', row4)

essay1len = len(essay1)

essay2len = len(essay2)

num_spel_errs_why = len(essay1) - len(filter(dictionary.check, essay1))

for word in essay1:

if dictionary.check(word) is False:

grammercounter = grammercounter + 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值