# Anta at du har en dictionary (ordbok) som best?r av studentobjekter, den er p? dette formatet: # studenter = {navn : student, navn: student, бн } # Alts? at n?kkelen er studentens navn, og at verdien er et studentobjekt. # Du kan anta at student har en metode som heter hentAlder(). # Bruk en for-l?kke til ? skrive ut navn og alder p? alle studentene i ordboken. # Lag Student-objektet som inneholder f?dselsdag delt i dag, m?ned og ?r. metoden hentAlder skal regne ut alderen til personen # og returnere et heltall (du kan bruke dagen i dag som basis). # Lag magisk metode for string og equals. Blir objektet kalt p? som en string skal det returnere f?dselsdato i format dd.mm.yyyy # equals skal returnere sant om de er like gamle. # Lag s? et testprogram som implementerer ordboken og sjekker at alt blir riktig. # F?rst lager vi en l?kke som tar inn en ordbok og skriver ut alle navnene og alderene til studentene def skriv_ut_studenter(ordbok): for nokkel in ordbok: print(f"Navn: {nokkel}\tAlder: {ordbok[nokkel].hentAlder()}") # Lager student-objektet: class Student: def __init__(self, dag, maned, ar): self._dag = dag self._maned = maned self._ar = ar def hentAlder(self): dag = 18 maned = 10 ar = 2023 if maned > self._maned: return ar - self._ar elif maned == self._maned: if dag >= self._dag: return ar - self._ar return ar - self._ar - 1 def __str__(self): return f"{self._dag}.{self._maned}.{self._ar}" def __eq__(self, annen): if isinstance(annen, Student): return self.hentAlder() == annen.hentAlder() return False def test(): ordbok = {"Liam" : Student(2, 2, 2003), "Liamkopi" : Student(2, 2, 2003), "Sigmund" : Student(17, 7, 1998)} skriv_ut_studenter(ordbok) for navn in ordbok: print(f"{navn} er f?dt: {ordbok[navn]}") studenter = list(ordbok.keys()) for i in range(len(studenter)-1): print(ordbok[studenter[i]] == ordbok[studenter[i+1]]) test()