from fag import Fag from student import Student class Studentsystem: def __init__(self): self._alleStudenter = [] self._alleFag = [] def lesInnFraFil(self, filnavn): fil = open(filnavn) fag = None for linje in fil: if linje[0] == "*": fag = Fag(linje[1:].strip()) self._alleFag.append(fag) else: navn = linje.strip() hentetStudent = self.finnStudent(navn) if hentetStudent is None: student = Student(navn) self._alleStudenter.append(student) hentetStudent = student fag.leggTilStudent(hentetStudent) hentetStudent.leggTilFag(fag) def finnStudent(self, navn): for student in self._alleStudenter: if student.hentStudentNavn() == navn: return student return None def finnFag(self, navn): for fag in self._alleFag: if fag.hentFagNavn() == navn: return fag return None def skrivAlleFag(self): for fag in self._alleFag: print(fag) def skrivFagTilStudent(self): navn = input("Oppgi navn på student: ") student = self.finnStudent(navn) if student is not None: student.skrivFagPaaStudent() else: print("Studenten", navn, "eksisterer ikke.") def skrivStudenterTilFag(self): navn = input("Oppgi fag: ") fag = self.finnFag(navn) if fag is not None: fag.skrivStudenterVedFag() else: print("Faget", navn, "eksisterer ikke.") def tarFlestFag(self): flestAntall = 0 studentMedFlest = None for student in self._alleStudenter: if student.hentAntallFag() > flestAntall: flestAntall = student.hentAntallFag() studentMedFlest = student if studentMedFlest is not None: print("Studenten med flest fag: " + studentMedFlest.hentStudentNavn()) else: print("Finnes ingen studenter..") def mestPopulaereFag(self): mestPop = None flestAntall = 0 for fag in self._alleFag: if fag.hentAntallStudenter() > flestAntall: mestPop = fag flestAntall = fag.hentAntallStudenter() if mestPop is not None: print("Mest populære fag: " + mestPop.hentFagNavn()) else: print("Ingen fag..") system = Studentsystem() system.lesInnFraFil("emnestudenter.txt") system.mestPopulaereFag() # system.skrivStudenterTilFag() # print(system._alleStudenter)