class Hus: def __init__(self, farge, refTilEier): self._farge = farge self._eier = refTilEier # N? kan vi sette eier n?r husobjektet lages self.neste = None def sett_eier(self, hvem): self._eier = hvem def hent_eier(self): return self._eier def mal(self, farge): self._farge = farge def hent_farge(self): return self._farge class Person: def __init__(self, navn): self._navn = navn def hent_navn(self): return self._navn husregister = None ola = Person("Ola") olas_hus = Hus("bl?", ola) # olas_hus.sett_eier(ola) # ikke lenger n?dvendig da eier n? var argument til konstrukt?ren husregister = olas_hus # 1. hus # kari = Person("Kari") karis_hus = Hus("r?d", Person("Kari")) #karis_hus.sett_eier(kari) karis_hus.neste = husregister husregister = karis_hus # Nytt 1. hus farge = "gul" nytt_hus = Hus(farge, Person("Ita")) #nytt_hus.sett_eier(person) nytt_hus.neste = husregister husregister = nytt_hus def nytt_hus_med_eier(eiernavn, husfarge): # eiernavn er navn p? huseier/person (str) # husfarge er fargen til det nye huset (str) # N? kan vi gj?re alt i ett uttrykk: return Hus(husfarge, Person(eiernavn)) # hus.sett_eier(person) # return hus nytt_hus = nytt_hus_med_eier("Ulv", "gr?tt") nytt_hus.neste = husregister husregister = nytt_hus nytt_hus = nytt_hus_med_eier("Ada", "oransje") nytt_hus.neste = husregister husregister = nytt_hus nytt_hus = nytt_hus_med_eier("Gard", "akvamarin") nytt_hus.neste = husregister husregister = nytt_hus nytt_hus = Hus("gr?nn", Person("Ane")) hus = husregister while hus != None: print(hus.hent_eier().hent_navn(), "eier et hus med farge", hus.hent_farge()) hus = hus.neste olas_hus = karis_hus olas_hus.mal("gul") print(karis_hus.hent_farge()) olas_hus = Hus("r?d", ola) print(karis_hus.hent_farge()) print(olas_hus) print(karis_hus) hus = husregister while hus != None: print(hus.hent_eier().hent_navn(), "eier et hus med farge", hus.hent_farge()) hus = hus.neste