- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用专门针对阿拉伯语的 (OMW) wordnet 开发 python/nltk。所有功能都适用于英语,但当我使用“arb”标签时,我似乎无法执行其中任何一个。唯一有用的是从给定的阿拉伯语同义词集中提取 lemma_names
。
下面的代码适用于 u'arb':输出是阿拉伯语引理列表。
for synset in wn.synsets(u'عام',lang=('arb')):
for lemma in synset.lemma_names(u'arb'):
print lemma
当我尝试使用同义词集、定义、示例、上位词执行与上述代码相同的逻辑时,我收到一条错误消息:
TypeError: hyponyms() takes exactly 1 argument (2 given)
(如果我提供 'arb'
标志)或
KeyError: u'arb'
如果我编写 synset.hyponyms(u'arb')
,这是将不起作用的代码之一:
for synset in wn.synsets(u'عام',lang=('arb')):
for hypo in synset.hyponyms(): #print the hyponyms in English not Arabic
print hypo
这是否意味着我无法使用 wn.all_synsets 和其他内置函数来提取所有阿拉伯语同义词集、上位词等?
最佳答案
nltk 的 Open Multilingual Wordnet 所有同义词集都有英文名称,因为它是一个以原始英文 Wordnet 为中心的多语言数据库。 Synsets 模型含义,因此它们与语言无关,不能用特定语言请求。但是每个同义词集都链接到 OMW 涵盖的语言的词条。一旦您有了一些同义词集(原文、下位词等),只需再次询问阿拉伯语词条:
>>> for synset in wn.synsets(u'عام',lang=('arb')):
... for hypo in synset.hyponyms():
... for lemma in hypo.lemmas("arb"):
... print(lemma)
...
Lemma('waft.v.01.إِنْبعث')
Lemma('waft.v.01.انبعث')
Lemma('waft.v.01.إنبعث_كالرائحة_العطرة')
Lemma('waft.v.01.إِنْدفع')
Lemma('waft.v.01.إِنْطلق')
Lemma('waft.v.01.انطلق')
Lemma('waft.v.01.حمل_بخفة')
Lemma('waft.v.01.دفع')
Lemma('calendar_year.n.01.سنة_شمْسِيّة')
Lemma('calendar_year.n.01.سنة_مدنِيّة')
Lemma('fiscal_year.n.01.سنة_ضرِيبِيّة')
Lemma('fiscal_year.n.01.سنة_مالِيّة')
换句话说,词条是多语言的,同义词集不是。
关于python - nltk "OMW"带有阿拉伯语的 wordnet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45156965/
我正在使用专门针对阿拉伯语的 (OMW) wordnet 开发 python/nltk。所有功能都适用于英语,但当我使用“arb”标签时,我似乎无法执行其中任何一个。唯一有用的是从给定的阿拉伯语同义词
我无法完成 nltk 包下载。它总是停在项目 omw (Open Multilingual Wordnet)。这是仅存的两个。我查看了其他帮助项目(即 install ntlk supporting
我是一名优秀的程序员,十分优秀!