adicionada funcionalidade de carregar ficheiros JSON com estratégias

This commit is contained in:
2024-09-13 02:31:25 +01:00
parent d8ae8a2165
commit 95ee241b41

View File

@ -1,5 +1,7 @@
# definição de classe Estrategia # definição de classe Estrategia
from enum import Enum from enum import Enum
import json
import os
class TiposEstrategia(Enum): class TiposEstrategia(Enum):
@ -11,14 +13,22 @@ class TiposEstrategia(Enum):
# lista de estratégias. cada entrada é um dicionário com # lista de estratégias. cada entrada é um dicionário com
lista_estrategias: list[dict] = [] lista_estrategias: dict = {}
def carregarFicheiroEstrategias(caminho_ficheiro: str) -> list[dict]: def carregarFicheirosEstrategias(pasta_estrategias: str) -> None:
lista: list = [] lista_ficheiros: list = os.listdir(pasta_estrategias)
return lista for ficheiro_json in lista_ficheiros:
with open(f'{pasta_estrategias}/{ficheiro_json}', 'r') as ficheiro:
dados = json.load(ficheiro)
lista_estrategias.update(dados)
class Estrategia(): def listaNomesEstrategias() -> list:
def __init__(self, estrategia: TiposEstrategia): return list(lista_estrategias.keys())
pass
def devolvePersonalidade(nome_estrategia: str) -> dict[str, float] | None:
personalidade: dict[str, float] | None = lista_estrategias.get(
nome_estrategia)
return personalidade