コード例 #1
0
ファイル: conf_help.py プロジェクト: Cowboyserg/test-ships
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
コード例 #2
0
ファイル: logic.py プロジェクト: Cowboyserg/test-ships
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