def get_good_dic() -> dict: """Возвращает словарь с информацией из первой (хорошей) базы данных""" dic_good = {} # получаем информацию из нормальной базы данных base_good = Sql("Wargaming.db") tables_names = base_good.get_all_tables() tables_names = [list(i) for i in tables_names] for i in tables_names: inf = base_good.exec_custom_command(f'SELECT * FROM {i[0]}') inf = [list(i) for i in inf] dic_good[i[0]] = inf return dic_good
def get_db(name: str) -> list: """Возвращает список, в котором информация из указанной базы данных""" mas_all = [] dic = {} base = Sql(name) tables_tuple = base.get_all_tables() tables_mas = [list(i) for i in tables_tuple] for i in tables_mas: # убираем из подписей все лишнее table_name = i[0] podpisi = base.get_table_names(table_name) podpisi = [list(x)[1] for x in podpisi] inf = base.get_table_inf_by_name(table_name) inf = [list(x) for x in inf] # собираем информацию и подписи и записываем в inf if "ships" not in table_name: for j in range(len(inf)): for k in range(1, len(inf[j])): inf[j][k] = {podpisi[k]: inf[j][k]} mas_all.append(inf) ships = mas_all[-1] not_ships = mas_all[:-1] dic_not_ships = {} for i in range(len(not_ships)): for j in range(len(not_ships[i])): dic_not_ships[not_ships[i][j][0]] = not_ships[i][j][1:] for i in range(len(ships)): dic[ships[i][0]] = { ships[i][1]: dic_not_ships[ships[i][1]], ships[i][2]: dic_not_ships[ships[i][2]], ships[i][3]: dic_not_ships[ships[i][3]] } # преобразуем получившийся словарь в двумерный список, который можно поместить в параметризацию mas_out = [] for key, value in dic.items(): for key1, value1 in value.items(): for param in value1: for key2, value2 in param.items(): mas = [key, key1, key2, value2] mas_out.append(mas) return mas_out