def initialize() -> None: if (WeaponItemToken.M_ONTOLOGY is not None): return WeaponItemToken.M_ONTOLOGY = TerminCollection() t = None tt = None li = [ ] t = Termin._new100("ПИСТОЛЕТ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("РЕВОЛЬВЕР", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ВИНТОВКА", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("РУЖЬЕ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new102("АВТОМАТ", WeaponItemToken.Typs.NOUN, 1) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new102("КАРАБИН", WeaponItemToken.Typs.NOUN, 1) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new124("ПИСТОЛЕТ-ПУЛЕМЕТ", "ПИСТОЛЕТ-ПУЛЕМЕТ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ПУЛЕМЕТ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ГРАНАТОМЕТ", WeaponItemToken.Typs.NOUN) t.add_variant("СТРЕЛКОВО ГРАНАТОМЕТНЫЙ КОМПЛЕКС", False) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ОГНЕМЕТ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("МИНОМЕТ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new2781("ПЕРЕНОСНОЙ ЗЕНИТНО РАКЕТНЫЙ КОМПЛЕКС", "ПЗРК", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new2781("ПРОТИВОТАНКОВЫЙ РАКЕТНЫЙ КОМПЛЕКС", "ПТРК", WeaponItemToken.Typs.NOUN) t.add_variant("ПЕРЕНОСНОЙ ПРОТИВОТАНКОВЫЙ РАКЕТНЫЙ КОМПЛЕКС", False) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("АВИАЦИОННАЯ ПУШКА", WeaponItemToken.Typs.NOUN) t.add_variant("АВИАПУШКА", False) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("НАРУЧНИКИ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("БРОНЕЖИЛЕТ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ГРАНАТА", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ЛИМОНКА", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("НОЖ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new100("ВЗРЫВАТЕЛЬ", WeaponItemToken.Typs.NOUN) WeaponItemToken.M_ONTOLOGY.add(t) for s in ["МАКАРОВ", "КАЛАШНИКОВ", "СИМОНОВ", "СТЕЧКИН", "ШМАЙСЕР", "МОСИН", "СЛОСТИН", "НАГАН", "МАКСИМ", "ДРАГУНОВ", "СЕРДЮКОВ", "ЯРЫГИН", "НИКОНОВ", "МАУЗЕР", "БРАУНИНГ", "КОЛЬТ", "ВИНЧЕСТЕР"]: WeaponItemToken.M_ONTOLOGY.add(Termin._new100(s, WeaponItemToken.Typs.BRAND)) for s in ["УЗИ"]: WeaponItemToken.M_ONTOLOGY.add(Termin._new100(s, WeaponItemToken.Typs.NAME)) t = Termin._new2792("ТУЛЬСКИЙ ТОКАРЕВА", "ТТ", "ТТ", WeaponItemToken.Typs.MODEL) li = list() li.append(Termin._new100("ПИСТОЛЕТ", WeaponItemToken.Typs.NOUN)) li.append(Termin._new100("ТОКАРЕВ", WeaponItemToken.Typs.BRAND)) t.tag2 = (li) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new2792("ПИСТОЛЕТ МАКАРОВА", "ПМ", "ПМ", WeaponItemToken.Typs.MODEL) li = list() li.append(Termin._new100("ПИСТОЛЕТ", WeaponItemToken.Typs.NOUN)) li.append(Termin._new100("МАКАРОВ", WeaponItemToken.Typs.BRAND)) t.tag2 = (li) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new2792("ПИСТОЛЕТ МАКАРОВА МОДЕРНИЗИРОВАННЫЙ", "ПММ", "ПММ", WeaponItemToken.Typs.MODEL) li = list() tt = Termin._new100("ПИСТОЛЕТ", WeaponItemToken.Typs.NOUN) li.append(tt) tt.add_variant("МОДЕРНИЗИРОВАННЫЙ ПИСТОЛЕТ", False) li.append(Termin._new100("МАКАРОВ", WeaponItemToken.Typs.BRAND)) t.tag2 = (li) WeaponItemToken.M_ONTOLOGY.add(t) t = Termin._new2792("АВТОМАТ КАЛАШНИКОВА", "АК", "АК", WeaponItemToken.Typs.MODEL) li = list() li.append(Termin._new100("АВТОМАТ", WeaponItemToken.Typs.NOUN)) li.append(Termin._new100("КАЛАШНИКОВ", WeaponItemToken.Typs.BRAND)) t.tag2 = (li) WeaponItemToken.M_ONTOLOGY.add(t)
def _initialize() -> None: if (NumberExHelper._m_postfixes is not None): return t = None NumberExHelper._m_postfixes = TerminCollection() t = Termin._new418("КВАДРАТНЫЙ МЕТР", MorphLang.RU, True, "кв.м.", NumberExType.METER2) t.add_abridge("КВ.МЕТР") t.add_abridge("КВ.МЕТРА") t.add_abridge("КВ.М.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("КВАДРАТНИЙ МЕТР", MorphLang.UA, True, "КВ.М.", NumberExType.METER2) t.add_abridge("КВ.МЕТР") t.add_abridge("КВ.МЕТРА") t.add_abridge("КВ.М.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("КВАДРАТНЫЙ КИЛОМЕТР", MorphLang.RU, True, "кв.км.", NumberExType.KILOMETER2) t.add_variant("КВАДРАТНИЙ КІЛОМЕТР", True) t.add_abridge("КВ.КМ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("ГЕКТАР", MorphLang.RU, True, "га", NumberExType.GEKTAR) t.add_abridge("ГА") NumberExHelper._m_postfixes.add(t) t = Termin._new418("АР", MorphLang.RU, True, "ар", NumberExType.AR) t.add_variant("СОТКА", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("КУБИЧЕСКИЙ МЕТР", MorphLang.RU, True, "куб.м.", NumberExType.METER3) t.add_variant("КУБІЧНИЙ МЕТР", True) t.add_abridge("КУБ.МЕТР") t.add_abridge("КУБ.М.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("МЕТР", MorphLang.RU, True, "м.", NumberExType.METER) t.add_abridge("М.") t.add_abridge("M.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("МЕТРОВЫЙ", MorphLang.RU, True, "м.", NumberExType.METER) t.add_variant("МЕТРОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЛИМЕТР", MorphLang.RU, True, "мм.", NumberExType.MILLIMETER) t.add_abridge("ММ") t.add_abridge("MM") t.add_variant("МІЛІМЕТР", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЛИМЕТРОВЫЙ", MorphLang.RU, True, "мм.", NumberExType.MILLIMETER) t.add_variant("МІЛІМЕТРОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("САНТИМЕТР", MorphLang.RU, True, "см.", NumberExType.SANTIMETER) t.add_abridge("СМ") t.add_abridge("CM") NumberExHelper._m_postfixes.add(t) t = Termin._new418("САНТИМЕТРОВЫЙ", MorphLang.RU, True, "см.", NumberExType.SANTIMETER) t.add_variant("САНТИМЕТРОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("КВАДРАТНЫЙ САНТИМЕТР", MorphLang.RU, True, "кв.см.", NumberExType.SANTIMETER2) t.add_variant("КВАДРАТНИЙ САНТИМЕТР", True) t.add_abridge("КВ.СМ.") t.add_abridge("СМ.КВ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("КУБИЧЕСКИЙ САНТИМЕТР", MorphLang.RU, True, "куб.см.", NumberExType.SANTIMETER3) t.add_variant("КУБІЧНИЙ САНТИМЕТР", True) t.add_abridge("КУБ.САНТИМЕТР") t.add_abridge("КУБ.СМ.") t.add_abridge("СМ.КУБ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("КИЛОМЕТР", MorphLang.RU, True, "км.", NumberExType.KILOMETER) t.add_abridge("КМ") t.add_abridge("KM") t.add_variant("КІЛОМЕТР", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("КИЛОМЕТРОВЫЙ", MorphLang.RU, True, "км.", NumberExType.KILOMETER) t.add_variant("КІЛОМЕТРОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЯ", MorphLang.RU, True, "миль", NumberExType.KILOMETER) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ГРАММ", MorphLang.RU, True, "гр.", NumberExType.GRAMM) t.add_abridge("ГР") t.add_abridge("Г") t.add_variant("ГРАМ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ГРАММОВЫЙ", MorphLang.RU, True, "гр.", NumberExType.GRAMM) NumberExHelper._m_postfixes.add(t) t = Termin._new418("КИЛОГРАММ", MorphLang.RU, True, "кг.", NumberExType.KILOGRAM) t.add_abridge("КГ") t.add_variant("КІЛОГРАМ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("КИЛОГРАММОВЫЙ", MorphLang.RU, True, "кг.", NumberExType.KILOGRAM) t.add_variant("КІЛОГРАМОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЛИГРАММ", MorphLang.RU, True, "мг.", NumberExType.MILLIGRAM) t.add_abridge("МГ") t.add_variant("МІЛІГРАМ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЛИГРАММОВЫЙ", MorphLang.RU, True, "мг.", NumberExType.MILLIGRAM) t.add_variant("МИЛЛИГРАМОВЫЙ", True) t.add_variant("МІЛІГРАМОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ТОННА", MorphLang.RU, True, "т.", NumberExType.TONNA) t.add_abridge("Т") t.add_abridge("T") NumberExHelper._m_postfixes.add(t) t = Termin._new418("ТОННЫЙ", MorphLang.RU, True, "т.", NumberExType.TONNA) t.add_variant("ТОННИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ЛИТР", MorphLang.RU, True, "л.", NumberExType.LITR) t.add_abridge("Л") t.add_variant("ЛІТР", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ЛИТРОВЫЙ", MorphLang.RU, True, "л.", NumberExType.LITR) t.add_variant("ЛІТРОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЛИЛИТР", MorphLang.RU, True, "мл.", NumberExType.MILLILITR) t.add_abridge("МЛ") t.add_variant("МІЛІЛІТР", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИЛЛИЛИТРОВЫЙ", MorphLang.RU, True, "мл.", NumberExType.MILLILITR) t.add_variant("МІЛІЛІТРОВИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ЧАС", MorphLang.RU, True, "ч.", NumberExType.HOUR) t.add_abridge("Ч.") t.add_variant("ГОДИНА", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МИНУТА", MorphLang.RU, True, "мин.", NumberExType.MINUTE) t.add_abridge("МИН.") t.add_variant("ХВИЛИНА", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("СЕКУНДА", MorphLang.RU, True, "сек.", NumberExType.SECOND) t.add_abridge("СЕК.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("ГОД", MorphLang.RU, True, "г.", NumberExType.YEAR) t.add_abridge("Г.") t.add_abridge("ЛЕТ") t.add_variant("ЛЕТНИЙ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("МЕСЯЦ", MorphLang.RU, True, "мес.", NumberExType.MONTH) t.add_abridge("МЕС.") t.add_variant("МЕСЯЧНЫЙ", True) t.add_variant("КАЛЕНДАРНЫЙ МЕСЯЦ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ДЕНЬ", MorphLang.RU, True, "дн.", NumberExType.DAY) t.add_abridge("ДН.") t.add_variant("ДНЕВНЫЙ", True) t.add_variant("СУТКИ", True) t.add_variant("СУТОЧНЫЙ", True) t.add_variant("КАЛЕНДАРНЫЙ ДЕНЬ", True) t.add_variant("РАБОЧИЙ ДЕНЬ", True) NumberExHelper._m_postfixes.add(t) t = Termin._new418("НЕДЕЛЯ", MorphLang.RU, True, "нед.", NumberExType.WEEK) t.add_variant("НЕДЕЛЬНЫЙ", True) t.add_variant("КАЛЕНДАРНАЯ НЕДЕЛЯ", False) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ПРОЦЕНТ", MorphLang.RU, True, "%", NumberExType.PERCENT) t.add_variant("%", False) t.add_variant("ПРОЦ", True) t.add_abridge("ПРОЦ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("ШТУКА", MorphLang.RU, True, "шт.", NumberExType.SHUK) t.add_variant("ШТ", False) t.add_abridge("ШТ.") t.add_abridge("ШТ-К") NumberExHelper._m_postfixes.add(t) t = Termin._new418("УПАКОВКА", MorphLang.RU, True, "уп.", NumberExType.UPAK) t.add_variant("УПАК", True) t.add_variant("УП", True) t.add_abridge("УПАК.") t.add_abridge("УП.") t.add_abridge("УП-КА") NumberExHelper._m_postfixes.add(t) t = Termin._new418("РУЛОН", MorphLang.RU, True, "рулон", NumberExType.RULON) t.add_variant("РУЛ", True) t.add_abridge("РУЛ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("НАБОР", MorphLang.RU, True, "набор", NumberExType.NABOR) t.add_variant("НАБ", True) t.add_abridge("НАБ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("КОМПЛЕКТ", MorphLang.RU, True, "компл.", NumberExType.KOMPLEKT) t.add_variant("КОМПЛ", True) t.add_abridge("КОМПЛ.") NumberExHelper._m_postfixes.add(t) t = Termin._new418("ПАРА", MorphLang.RU, True, "пар", NumberExType.PARA) NumberExHelper._m_postfixes.add(t) t = Termin._new418("ФЛАКОН", MorphLang.RU, True, "флак.", NumberExType.FLAKON) t.add_variant("ФЛ", True) t.add_abridge("ФЛ.") t.add_variant("ФЛАК", True) t.add_abridge("ФЛАК.") NumberExHelper._m_postfixes.add(t) for te in NumberExHelper._m_postfixes.termins: ty = Utils.valToEnum(te.tag, NumberExType) if (not ty in NumberExHelper._m_normals_typs): NumberExHelper._m_normals_typs[ty] = te.canonic_text NumberExHelper.__m_small_money = TerminCollection() t = Termin._new124("УСЛОВНАЯ ЕДИНИЦА", "УЕ", NumberExType.MONEY) t.add_abridge("У.Е.") t.add_abridge("У.E.") t.add_abridge("Y.Е.") t.add_abridge("Y.E.") NumberExHelper._m_postfixes.add(t) for k in range(3): str0_ = PullentiNerCoreInternalResourceHelper.get_string( ("Money.csv" if k == 0 else ("MoneyUA.csv" if k == 1 else "MoneyEN.csv"))) if (str0_ is None): continue lang = (MorphLang.RU if k == 0 else (MorphLang.UA if k == 1 else MorphLang.EN)) if (str0_ is None): continue for line0 in Utils.splitString(str0_, '\n', False): line = line0.strip() if (Utils.isNullOrEmpty(line)): continue parts = Utils.splitString(line.upper(), ';', False) if (parts is None or len(parts) != 5): continue if (Utils.isNullOrEmpty(parts[1]) or Utils.isNullOrEmpty(parts[2])): continue t = Termin() t.init_by_normal_text(parts[1], lang) t.canonic_text = parts[2] t.acronym = parts[2] t.tag = NumberExType.MONEY for p in Utils.splitString(parts[0], ',', False): if (p != parts[1]): t0 = Termin() t0.init_by_normal_text(p, None) t.add_variant_term(t0) if (parts[1] == "РУБЛЬ"): t.add_abridge("РУБ.") elif (parts[1] == "ГРИВНЯ" or parts[1] == "ГРИВНА"): t.add_abridge("ГРН.") elif (parts[1] == "ДОЛЛАР"): t.add_abridge("ДОЛ.") t.add_abridge("ДОЛЛ.") elif (parts[1] == "ДОЛАР"): t.add_abridge("ДОЛ.") elif (parts[1] == "ИЕНА"): t.add_variant("ЙЕНА", False) NumberExHelper._m_postfixes.add(t) if (Utils.isNullOrEmpty(parts[3])): continue num = 0 i = parts[3].find(' ') if (i < 2): continue wrapnum463 = RefOutArgWrapper(0) inoutres464 = Utils.tryParseInt(parts[3][0:0 + i], wrapnum463) num = wrapnum463.value if (not inoutres464): continue vv = parts[3][i:].strip() t = Termin() t.init_by_normal_text(parts[4], lang) t.tag = (num) if (vv != parts[4]): t0 = Termin() t0.init_by_normal_text(vv, None) t.add_variant_term(t0) if (parts[4] == "КОПЕЙКА" or parts[4] == "КОПІЙКА"): t.add_abridge("КОП.") NumberExHelper.__m_small_money.add(t)