from hytte import Hytte from tur import Tur class Turplanlegger: def __init__(self, hyttefilnavn, turfilnavn): self._hytter = self._hytter_fra_fil(hyttefilnavn) self._turer = self._turer_fra_fil(turfilnavn) def _hytter_fra_fil(self, filnavn): # returnerer ei ordbok med hyttenavn -> Hytte() # filformat: "hyttenavn 10 250" ordbok = {} # sett inn n?kkel og innhold fil = open(filnavn, "r") for linje in fil: data = linje.strip().split(" ") hyttenavn, seng, pris = data[0], int(data[1]), float(data[2]) ordbok[hyttenavn] = Hytte(hyttenavn, seng, pris) fil.close() return ordbok def _turer_fra_fil(self, filnavn): #returnerer en liste #opprette Tur-objekter Tur(hytter, tekst) turer = [] fil = open(filnavn, "r") tekst = fil.readline().strip() while tekst != "": hytte_objekter = [] hytte_linje = fil.readline().strip() hyttenavn = hytte_linje.split(" ") for navn in hyttenavn: hytte_objekter.append(self._hytter[navn]) turer.append(Tur(hytte_objekter, tekst)) tekst = fil.readline().strip() fil.close() return turer def finn_turer(self, antall_pers, maksbelop, maks_antall_dager): for tur in self._turer: if tur.sjekk_pris_plass(antall_pers, maksbelop) and tur.hent_antall_dager() <= maks_antall_dager: tur.skriv_tur() turplanlegger = Turplanlegger("hytter.txt", "turer.txt") turplanlegger.finn_turer(7, 7000, 5)