From 63af9c4eaa377c4a31c4337932cfb4912719e457 Mon Sep 17 00:00:00 2001 From: justuser31 Date: Fri, 3 May 2024 18:04:09 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8F=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=BB=D0=BE=D0=BA=D0=B0=D0=BB=D0=B8=D0=B7=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- reworked/parse.py | 67 +++++++++++++++++++++++++++++------------------ 1 file changed, 41 insertions(+), 26 deletions(-) diff --git a/reworked/parse.py b/reworked/parse.py index fc238b5..f007151 100644 --- a/reworked/parse.py +++ b/reworked/parse.py @@ -30,29 +30,44 @@ def load_recipes(url = 'https://raw.githubusercontent.com/SerbiaStrong-220/space recipes[product] = reag__(category=category, comps=comps, out=out) return recipes -def localize(ftl = parse_ftl()): - recipes = load_recipes() - for k, v in list(recipes.items()): - for word in ftl: - if k.lower() == word: - new_key = ftl[word].capitalize() - recipes[new_key] = recipes.pop(k) - for k1, v1 in list(recipes[new_key].comps.items()): - for word1 in ftl: - if k1.lower() == word1: - new_key1 = ftl[word1] - recipes[new_key].comps[new_key1] = recipes[new_key].comps.pop(k1) - else: - try: - for k1, v1 in list(recipes[k].comps.items()): - for word1 in ftl: - if k1.lower() == word1: - new_key1 = ftl[word1].capitalize() - recipes[k].comps[new_key1] = recipes[k].comps.pop(k1) - except: - for k1, v1 in list(recipes[new_key].comps.items()): - for word1 in ftl: - if k1.lower() == word1: - new_key1 = ftl[word1].capitalize() - recipes[new_key].comps[new_key1] = recipes[new_key].comps.pop(k1) - return recipes \ No newline at end of file + +def localize(recipes, locale): + loc_recipes = {} + # Итерируем элементы + for element in recipes: + # Итерируем составные + el = recipes[element] + # Локализованные составные + loc_comps = {} + for comp in el.comps: + # Ищем перевод + if comp.lower() in locale: + loc = locale[comp.lower()].capitalize() + loc_comps[loc] = el.comps[comp] + else: + loc_comps[comp] = el.comps[comp] + # Заменяем на локализованное + el.comps = loc_comps + + # Локализуем ключ + if element.lower() in locale: + loc = locale[element.lower()].capitalize() + loc_recipes[loc] = recipes[element] + else: + loc_recipes[element] = recipes[element] + + return loc_recipes + + + + +recipes = load_recipes() +locales = parse_ftl() + +recipes = localize(recipes, locales) + +from icecream import ic +ic.configureOutput(prefix='') +for i in recipes: + el = [i, recipes[i].comps] + ic(el)