from random import sample, choice DEBUG = True class Quizdata(): """ Data Model """ def __init__(self, controller): self.con = controller # TODO: full list of presidents self.D = {1: "George Washington", 2: "John Adams", 3: "Thomas Jefferson", 4: "James Madison", 5: "James Monroe", 6: "John Quincy Adams", 7: "Andrew Jackson", 8: "Martin Van Buren", 9: "William Henry Harrison", 10: "John Tyler", 11: "James K. Polk", 12: "Zachary Tayler", 13: "Millard Fillmore", 14: "Franklin Pierce", 15: "James Buchanan", 16: "Abraham Lincoln", 17: "Andrew Johnson", 18: "Ulysses S. Grant", 19: "Rutherford B. Hayes", 20: "James A. Garfield", 21: "Chester A. Arthur" } self.list_of_names = list(self.D.values()) def get_random_sample_dict(self, number: int = 4): # get list of selected keys selection = sample(sorted(self.D), number) # construct dictionary of selected elements selection_D = dict() for key in selection: selection_D[key] = self.D[key] return selection_D def get_single_from_sample_dict(self, selection_D): # get random single element from dict chosen = choice(sorted(selection_D)) # int (key) # construct dictionary of chosen element chosen_D = dict() chosen_D[chosen] = self.D[chosen] return chosen_D def test_get_random_sample(self): s = self.get_random_sample_dict() print("Quizdata.test: {}".format(s)) # TODO: implement loading of data from file def load_from_file(self, filename: str = None): pass # TODO: saving to file + editor of data def save_to_file(self, filename: str = None): pass