import random from model.db_service import DbService from util import common class TextDb(DbService): def __init__(self) -> None: super().__init__() self.FACTS_LIST = None def load_facts_from_file(self): facts_file = open(f"{common.get_project_root()}/resources/facts.txt", mode="r+") self.FACTS_LIST = facts_file.readlines() assert self.FACTS_LIST def get_fact(self): if self.FACTS_LIST is None: self.load_facts_from_file() return random.choice(self.FACTS_LIST) def get_multiple_facts(self, count=5): if self.FACTS_LIST is None: self.load_facts_from_file() return random.sample(self.FACTS_LIST, k=count)