我有一个俄语单词(这实际上是困难所在)。是个形容词。我需要把它变成名词形式。
我发现了一个有趣的库,它可以解析单词,改变和规范化它们。这是图书馆:pymorphy2
,但无论我怎么做,都得不到预期的结果。我想收到:
这些是城市的名字。左边是我从数据中得到的单词的形式,右边是我需要的形式。
киселевский ---> киселевск
юргинский ---> юрга
到目前为止,左边的单词只是被定义为形容词的不同形式,如果你看一下它们的分析。有没有办法把它们转换成名词?
小字解析代码:
import pymorphy2
morph = pymorphy2.MorphAnalyzer()
word = 'Киселевский'
test = morph.parse(word)[0]
test.tag.POS
>>'ADJF'
test_2 = morph.parse(word)[0].normal_form
test_2
>>'киселевский'
test.lexeme
>> [Parse(word='киселевский', tag=OpencorporaTag('ADJF masc,sing,nomn'), normal_form='киселевский', score=1.0, methods_stack=((FakeDictionary(), 'киселевский', 16, 0), (KnownSuffixAnalyzer(min_word_length=4, score_multiplier=0.5), 'вский'))),
Parse(word='киселевского', tag=OpencorporaTag('ADJF masc,sing,gent'), normal_form='киселевский', score=1.0, methods_stack=((FakeDictionary(), 'киселевского', 16, 1), (KnownSuffixAnalyzer(min_word_length=4, score_multiplier=0.5), 'вский'))),
Parse(word='киселевскому', tag=OpencorporaTag('ADJF masc,sing,datv'), normal_form='киселевский', score=1.0, methods_stack=((FakeDictionary(), 'киселевскому', 16, 2), (KnownSuffixAnalyzer(min_word_length=4, score_multiplier=0.5), 'вский'))),
Parse(word='киселевского', tag=OpencorporaTag('ADJF anim,masc,sing,accs'), normal_form='киселевский', score=1.0, methods_stack=((FakeDictionary(), 'киселевского', 16, 3), (KnownSuffixAnalyzer(min_word_length=4, score_multiplier=0.5), 'вский'))),
Parse(word='киселевский', tag=OpencorporaTag('ADJF inan,masc,sing,accs'), normal_form='киселевский', score=1.0, methods_stack=((FakeDictionary(), 'киселевский', 16, 4), (KnownSuffixAnalyzer(min_word_length=4, score_multiplier=0.5), 'вский'))),
Parse(word='киселевским', tag=OpencorporaTag('ADJF masc,sing,ablt'), normal_form='киселевский', score=1.0, methods_stack=((FakeDictionary(), 'киселевским', 16, 5), (KnownSuffixAnalyzer(min_word_length=4, score_multiplier=0.5), 'вский')))...]
1条答案
按热度按时间mwkjh3gx1#
你需要一个数据库(例如,通过抓取Wiktionary)来做到这一点,因为关系形容词不被认为是它们所派生的名词的一种形式;它们被认为是不同的单词(词素),如解析对象的
pymorphy2
ID(属性methods_stack[0][2]
)所指示的。对于城市的名称,我认为这将更加困难,因为源地名与其关系形容词之间的转换规则是不规则的(就像在英语中一样),并且您可能只能找到特定规模以上的城市的适当数据。