def get_plurl_iv6_prim(name: str, inf_0: str, __) -> list: if inf_0 == 'неод': smnv = f'{name}' else: smnv = f'{name[:-1]}' word_forms = [ WordForm(f'{name}', '.СмнИ'), WordForm(f'{name[:-1]}', '.СмнР'), WordForm(f'{name[:-1]}ам', '.СмнД'), WordForm(smnv, '.СмнВ'), WordForm(f'{name[:-1]}ами', '.СмнТ'), WordForm(f'{name[:-1]}ах', '.СмнП'), ] return word_forms
def get_plurl_iv12(name: str, inf_0: str, _) -> list: if inf_0 == 'неод': smnv = f'{name[:-4]}ята' else: smnv = f'{name[:-4]}ят' word_forms = [ WordForm(f'{name[:-4]}ята', '.СмнИ'), WordForm(f'{name[:-4]}ят', '.СмнР'), WordForm(f'{name[:-4]}ятам', '.СмнД'), WordForm(smnv, '.СмнВ'), WordForm(f'{name[:-4]}ятами', '.СмнТ'), WordForm(f'{name[:-4]}ятах', '.СмнП'), ] return word_forms
def get_plurl_iv6(_, inf_0: str, singl_word_forms: list) -> list: ser = list(filter(lambda x: x.idf == '.СеР', singl_word_forms))[0].name if inf_0 == 'неод': smnv = f'{ser}' else: smnv = f'{ser[:-1]}' word_forms = [ WordForm(f'{ser}', '.СмнИ'), WordForm(f'{ser[:-1]}', '.СмнР'), WordForm(f'{ser[:-1]}ам', '.СмнД'), WordForm(smnv, '.СмнВ'), WordForm(f'{ser[:-1]}ами', '.СмнТ'), WordForm(f'{ser[:-1]}ах', '.СмнП'), ] return word_forms
def get_full_i2_prim(src_dict) -> list: name = src_dict['name'] if src_dict['Inf_4'] != 'о': pmv = f'{name}' pmnv = f'{name[:-4]}иеся' else: pmv = f'{name[:-4]}егося' pmnv = f'{name[:-4]}ихся' word_forms = [ WordForm(f'{name}', '.ПмИ'), WordForm(f'{name[:-4]}егося', '.ПмР'), WordForm(f'{name[:-4]}емуся', '.ПмД'), WordForm(pmv, '.ПмВ'), WordForm(f'{name[:-4]}имся', '.ПмТ'), WordForm(f'{name[:-4]}емся', '.ПмП'), WordForm(f'{name[:-4]}аяся', '.ПжИ'), WordForm(f'{name[:-4]}ейся', '.ПжР'), WordForm(f'{name[:-4]}ейся', '.ПжД'), WordForm(f'{name[:-4]}уюся', '.ПжВ'), WordForm(f'{name[:-4]}ейся', '.ПжТ1'), WordForm(f'{name[:-4]}еюся', '.ПжТ2'), WordForm(f'{name[:-4]}ейся', '.ПжП'), WordForm(f'{name[:-4]}ееся', '.ПсИ'), WordForm(f'{name[:-4]}егося', '.ПсР'), WordForm(f'{name[:-4]}емуся', '.ПсД'), WordForm(f'{name[:-4]}ееся', '.ПсВ'), WordForm(f'{name[:-4]}имся', '.ПсТ'), WordForm(f'{name[:-4]}емся', '.ПсП'), WordForm(f'{name[:-4]}иеся', '.ПмнИ'), WordForm(f'{name[:-4]}ихся', '.ПмнР'), WordForm(f'{name[:-4]}имся', '.ПмнД'), WordForm(pmnv, '.ПмнВ'), WordForm(f'{name[:-4]}имися', '.ПмнТ'), WordForm(f'{name[:-4]}ихся', '.ПмнП'), ] return word_forms
def get_superlative_pi1(src_dict) -> list: name = src_dict['name'] word_forms = [ WordForm(f'{name[:-2]}ейший', '.ППмИ'), WordForm(f'{name[:-2]}ейшего', '.ППмР'), WordForm(f'{name[:-2]}ейшему', '.ППмД'), WordForm(f'{name[:-2]}ейший', '.ППмВ'), WordForm(f'{name[:-2]}ейшим', '.ППмТ'), WordForm(f'{name[:-2]}ейшем', '.ППмП'), WordForm(f'{name[:-2]}ейшая', '.ППжИ'), WordForm(f'{name[:-2]}ейшей', '.ППжР'), WordForm(f'{name[:-2]}ейшей', '.ППжД'), WordForm(f'{name[:-2]}ейшую', '.ППжВ'), WordForm(f'{name[:-2]}ейшей', '.ППжТ1'), WordForm(f'{name[:-2]}ейшею', '.ППжТ2'), WordForm(f'{name[:-2]}ейшей', '.ППжП'), WordForm(f'{name[:-2]}ейшее', '.ППсИ'), WordForm(f'{name[:-2]}ейшего', '.ППсР'), WordForm(f'{name[:-2]}ейшему', '.ППсД'), WordForm(f'{name[:-2]}ейшее', '.ППсВ'), WordForm(f'{name[:-2]}ейшим', '.ППсТ'), WordForm(f'{name[:-2]}ейшем', '.ППсП'), WordForm(f'{name[:-2]}ейшие', '.ППмнИ'), WordForm(f'{name[:-2]}ейших', '.ППмнР'), WordForm(f'{name[:-2]}ейшим', '.ППмнД'), WordForm(f'{name[:-2]}ейшие', '.ППмнВ'), WordForm(f'{name[:-2]}ейшими', '.ППмнТ'), WordForm(f'{name[:-2]}ейших', '.ППмнП'), ] return word_forms
def get_short_k5mn(src_dict) -> list: name = src_dict['name'] word_forms = [ WordForm(f'{name[:-2]}и', '.ПКмн'), ] return word_forms
def get_full_iiif(src_dict) -> list: name = src_dict['name'] if src_dict['Inf_4'] != 'о': pmv = f'{name}' pmnv = f'{name}ы' else: pmv = f'{name}а' pmnv = f'{name}ых' word_forms = [ WordForm(f'{name}', '.ПмИ'), WordForm(f'{name}а', '.ПмР'), WordForm(f'{name}у', '.ПмД'), WordForm(pmv, '.ПмВ'), WordForm(f'{name}ым', '.ПмТ'), WordForm(f'{name}е', '.ПмП'), WordForm(f'{name}а', '.ПжИ'), WordForm(f'{name}ой', '.ПжР'), WordForm(f'{name}ой', '.ПжД'), WordForm(f'{name}у', '.ПжВ'), WordForm(f'{name}ой', '.ПжТ1'), WordForm(f'{name}ою', '.ПжТ2'), WordForm(f'{name}ой', '.ПжП'), WordForm(f'{name}ы', '.ПмнИ'), WordForm(f'{name}ых', '.ПмнР'), WordForm(f'{name}ым', '.ПмнД'), WordForm(pmnv, '.ПмнВ'), WordForm(f'{name}ыми', '.ПмнТ'), WordForm(f'{name}ых', '.ПмнП'), ] return word_forms
def get_full_i2(src_dict) -> list: name = src_dict['name'] if src_dict['Inf_4'] != 'о': pmv = f'{name}' pmnv = f'{name[:-2]}ие' else: pmv = f'{name[:-2]}его' pmnv = f'{name[:-2]}их' word_forms = [ WordForm(f'{name}', '.ПмИ'), WordForm(f'{name[:-2]}его', '.ПмР'), WordForm(f'{name[:-2]}ему', '.ПмД'), WordForm(pmv, '.ПмВ'), WordForm(f'{name[:-2]}им', '.ПмТ'), WordForm(f'{name[:-2]}ем', '.ПмП'), WordForm(f'{name[:-2]}ая', '.ПжИ'), WordForm(f'{name[:-2]}ей', '.ПжР'), WordForm(f'{name[:-2]}ей', '.ПжД'), WordForm(f'{name[:-2]}ую', '.ПжВ'), WordForm(f'{name[:-2]}ей', '.ПжТ1'), WordForm(f'{name[:-2]}ею', '.ПжТ2'), WordForm(f'{name[:-2]}ей', '.ПжП'), WordForm(f'{name[:-2]}ее', '.ПсИ'), WordForm(f'{name[:-2]}его', '.ПсР'), WordForm(f'{name[:-2]}ему', '.ПсД'), WordForm(f'{name[:-2]}ее', '.ПсВ'), WordForm(f'{name[:-2]}им', '.ПсТ'), WordForm(f'{name[:-2]}ем', '.ПсП'), WordForm(f'{name[:-2]}ие', '.ПмнИ'), WordForm(f'{name[:-2]}их', '.ПмнР'), WordForm(f'{name[:-2]}им', '.ПмнД'), WordForm(pmnv, '.ПмнВ'), WordForm(f'{name[:-2]}ими', '.ПмнТ'), WordForm(f'{name[:-2]}их', '.ПмнП'), ] return word_forms
def get_full_ii2_c(src_dict) -> list: name = src_dict['name'] if src_dict['Inf_4'] != 'о': pmv = f'{name}' pmnv = f'{name[:-2]}ые' else: pmv = f'{name[:-2]}ого' pmnv = f'{name[:-2]}ых' word_forms = [ WordForm(f'{name}', '.ПмИ'), WordForm(f'{name[:-2]}ого', '.ПмР'), WordForm(f'{name[:-2]}ому', '.ПмД'), WordForm(pmv, '.ПмВ'), WordForm(f'{name[:-2]}ым', '.ПмТ'), WordForm(f'{name[:-2]}ом', '.ПмП'), WordForm(f'{name[:-2]}ая', '.ПжИ'), WordForm(f'{name}', '.ПжР'), WordForm(f'{name}', '.ПжД'), WordForm(f'{name[:-2]}ую', '.ПжВ'), WordForm(f'{name}', '.ПжТ1'), WordForm(f'{name[:-2]}ою', '.ПжТ2'), WordForm(f'{name}', '.ПжП'), WordForm(f'{name[:-2]}ые', '.ПмнИ'), WordForm(f'{name[:-2]}ых', '.ПмнР'), WordForm(f'{name[:-2]}ым', '.ПмнД'), WordForm(pmnv, '.ПмнВ'), WordForm(f'{name[:-2]}ыми', '.ПмнТ'), WordForm(f'{name[:-2]}ых', '.ПмнП'), ] return word_forms
def get_full_ii1c(src_dict) -> list: name = src_dict['name'] if src_dict['Inf_4'] != 'о': pmnv = f'{name[:-2]}ые' else: pmnv = f'{name[:-2]}ых' word_forms = [ WordForm(f'{name}', '.ПсИ'), WordForm(f'{name[:-2]}ого', '.ПсР'), WordForm(f'{name[:-2]}ому', '.ПсД'), WordForm(f'{name}', '.ПсВ'), WordForm(f'{name[:-2]}ым', '.ПсТ'), WordForm(f'{name[:-2]}ом', '.ПсП'), WordForm(f'{name[:-2]}ые', '.ПмнИ'), WordForm(f'{name[:-2]}ых', '.ПмнР'), WordForm(f'{name[:-2]}ым', '.ПмнД'), WordForm(pmnv, '.ПмнВ'), WordForm(f'{name[:-2]}ыми', '.ПмнТ'), WordForm(f'{name[:-2]}ых', '.ПмнП'), ] return word_forms
def get_full_i1g(src_dict) -> list: name = src_dict['name'] if src_dict['Inf_4'] != 'о': pmnv = f'{name[:-2]}ие' else: pmnv = f'{name[:-2]}их' word_forms = [ WordForm(f'{name}', '.ПжИ'), WordForm(f'{name[:-2]}ей', '.ПжР'), WordForm(f'{name[:-2]}ей', '.ПжД'), WordForm(f'{name[:-2]}юю', '.ПжВ'), WordForm(f'{name[:-2]}ей', '.ПжТ1'), WordForm(f'{name[:-2]}ею', '.ПжТ2'), WordForm(f'{name[:-2]}ей', '.ПжП'), WordForm(f'{name[:-2]}ие', '.ПмнИ'), WordForm(f'{name[:-2]}их', '.ПмнР'), WordForm(f'{name[:-2]}им', '.ПмнД'), WordForm(pmnv, '.ПмнВ'), WordForm(f'{name[:-2]}ими', '.ПмнТ'), WordForm(f'{name[:-2]}их', '.ПмнП'), ] if src_dict['Inf_5'] != 'е': return word_forms else: return word_forms[:7]
def get_plurl_i1_and_iv11(name: str, _, singl_word_forms: list) -> list: ser = list(filter(lambda x: x.idf == '.СеР', singl_word_forms))[0].name word_forms = [ WordForm(f'{ser[:-1]}и', '.СмнИ1'), WordForm(f'{name[:-2]}ята', '.СмнИ2'), WordForm(f'{ser[:-1]}ов', '.СмнР1'), WordForm(f'{name[:-2]}ят', '.СмнР2'), WordForm(f'{ser[:-1]}ам', '.СмнД1'), WordForm(f'{name[:-2]}ятам', '.СмнД2'), WordForm(f'{ser[:-1]}ов', '.СмнВ1'), WordForm(f'{name[:-2]}ят', '.СмнВ2'), WordForm(f'{ser[:-1]}ами', '.СмнТ1'), WordForm(f'{name[:-2]}ятами', '.СмнТ2'), WordForm(f'{ser[:-1]}ах', '.СмнП1'), WordForm(f'{name[:-2]}ятах', '.СмнП2'), ] return word_forms