Склонение слов в pymorphy2 не работает с переменной
slovo.inflect({padezh})
Выводит: ValueError: Unknown grammeme: None
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
Пример:
In [56]: from pymorphy2 import MorphAnalyzer
In [57]: morph = MorphAnalyzer()
In [58]: word = "слон"
In [59]: word_parsed = morph.parse(word)[0]
In [60]: word_parsed
Out[60]: Parse(word='слон', tag=OpencorporaTag('NOUN,anim,masc sing,nomn'), normal_form='слон', score=1.0, methods_stack=((<DictionaryAnalyzer>, 'слон', 52, 0),))
In [61]: case = "loct"
In [62]: word_parsed.inflect({case})
Out[62]: Parse(word='слоне', tag=OpencorporaTag('NOUN,anim,masc sing,loct'), normal_form='слон', score=1.0, methods_stack=((<DictionaryAnalyzer>, 'слоне', 52, 5),))
In [63]: case = "gent"
In [64]: word_parsed.inflect({case})
Out[64]: Parse(word='слона', tag=OpencorporaTag('NOUN,anim,masc sing,gent'), normal_form='слон', score=1.0, methods_stack=((<DictionaryAnalyzer>, 'слона', 52, 1),))