首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python中动词的NodeBox错误

python中动词的NodeBox错误
EN

Stack Overflow用户
提问于 2011-04-01 13:09:03
回答 1查看 560关注 0票数 2

我下载了http://nodebox.net/code/index.php/Linguistics#verb_conjugation包,即使我试图获取动词的时态,我也得到了一个错误。

代码语言:javascript
复制
import en
print en.is_verb('use')
#prints TRUE

print en.verb.tense('use')

KeyError                                  Traceback (most recent call last)

/home/cse/version2_tense.py in <module>()
----> 1 
      2 
      3 
      4 
      5 

/home/cse/en/__init__.pyc in tense(self, word)
    124 
    125     def tense(self, word):
--> 126         return verb_lib.verb_tense(word)
    127 
    128     def is_tense(self, word, tense, negated=False):

/home/cse/en/verb/__init__.pyc in verb_tense(v)
    175 
    176     infinitive = verb_infinitive(v)
--> 177     a = verb_tenses[infinitive]
    178     for tense in verb_tenses_keys:
    179         if a[verb_tenses_keys[tense]] == v:

KeyError: ''
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-01 14:18:14

出现此错误的原因是因为他们用来创建字典的~/Library/Application Support/NodeBox/en/verb/verb.txt文件中存在错误。

use是形式,而"used“作为不定式输入。

第5857行的

used,,,uses,,using,,,,,used,used,,,,,,,,,,,,

应该是:

use,,,uses,,using,,,,,used,used,,,,,,,,,,,,

编辑保存文件后的

代码语言:javascript
复制
import en

print en.is_verb("use")
print en.verb.infinitive('use')
print en.verb.tense('use')

提供:

代码语言:javascript
复制
True
use
infinitive

extra:

代码语言:javascript
复制
import en

print 'use    %s' % en.verb.tense("use")
print 'uses   %s' % en.verb.tense("uses")
print 'using  %s' % en.verb.tense('using')
print 'used   %s' % en.verb.tense('used')

use    infinitive
uses   3rd singular present
using  present participle
used   past
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5509384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档