from fag import Fag from student import Student class Studentsystem: # 1.1 def __init__(self): self._fag = [] self._studenter = [] # 1.2 def lesFil(self, filnavn): fil = open(filnavn) fag = None for linje in fil: # Er det et fag? if linje[0] == "*": fag = Fag(linje[1:-1]) self._fag.append(fag) # Er det ikke et fag, må det være en student else: navn = linje.strip() # Finnes denne studenten fra før? student = self.finnStudent(navn) # Hvis ikke må vi opprette den if student == None: student = Student(navn) self._studenter.append(student) fag.leggTilStudent(student) student.leggTilFag(fag) fil.close() # 1.3 def finnStudent(self, navn): for student in self._studenter: if navn == student.hentStudentNavn(): return student return None #trengs ikke # 1.4 def finnFag(self, navn): for fag in self._fag: if navn == fag.hentFagNavn(): return fag return None # 2.1 def skrivStudent(self): navn = input("Hvilken student vil du skrive fag til?\n> ") student = self.finnStudent(navn) if student: # Det samme som "if student != None" student.skrivFagPaaStudent() else: print("Denne studenten finnes ikke") # 2.2 def skrivFag(self): navn = input("Hvilket fag vil du skrive ut studentene til?\n> ") fag = self.finnFag(navn) if fag: fag.skrivStudenterVedFag() else: print("Dette faget finnes ikke") # 2.3 def finnStudentMedFlestFag(self): pass # 2.4 def finnFagMedFlestStudenter(self): pass # 3.1 def leggTilStudent(self): pass # 3.2 def leggTilFag(self): pass # 4.1 def leggTilStudentIFag(self): pass def tarFag(self, fag): return fag in self._fagliste # 5.1 def ordrelokke(self): inp = "" while inp != "0": self.skrivMeny() inp = input("Skriv inn ditt valg\n> ") if inp == "1": self.leggTilStudent() elif inp == "2": self.leggTilFag() elif inp == "3": self.leggTilStudentIFag() elif inp == "4": self.skrivFag() elif inp == "5": self.skrivStudent() print("Adjø") def skrivMeny(self): print(""" --Meny-- 1 - Legg til ny student 2 - Legg til nytt fag 3 - Legg til student i fag 4 - Skriv ut studenter ved fag 5 - Skriv ut alle fag til student ... 0 - Avslutt""") # 7.1 def fjernStudentFraFag(self): pass