我下载了包http://nodebox.net/code/index.php/Linguistics#verb_conjugation 即使我试图获得动词的时态,我也会收到错误.
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: ''
Run Code Online (Sandbox Code Playgroud)
您收到此错误的原因是因为~/Library/Application Support/NodeBox/en/verb/verb.txt他们用于创建字典的文件中存在错误.
use是infinitive表单,但是,"used"作为不定式输入.
在第5857行:
used,,,uses,,using,,,,,used,used,,,,,,,,,,,,
应该:
use,,,uses,,using,,,,,used,used,,,,,,,,,,,,
编辑并保存文件后:
import en
print en.is_verb("use")
print en.verb.infinitive('use')
print en.verb.tense('use')
Run Code Online (Sandbox Code Playgroud)
得到:
True
use
infinitive
Run Code Online (Sandbox Code Playgroud)
额外:
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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
534 次 |
| 最近记录: |