class Hus:
def __init__(self, farge):
self._farge = farge
self._eier = None
def sett_eier(self, hvem):
self._eier = hvem
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 = []
ola = Person("Ola")
olas_hus = Hus("bl?")
# I stedet for navnet, setter vi inn en referanse/peker til personobjektet til Ola
# For ? se hvordan dette blir, visualiser programmet i PythonTutor
olas_hus.sett_eier(ola)
husregister.append(olas_hus)
kari = Person("Kari")
karis_hus = Hus("r?d")
karis_hus.sett_eier(kari)
husregister.append(karis_hus)
ola = kari = olas_hus = karis_hus = None
# Resten av hovedprogrammet er uforandret fra originalen der husregister var ei ordbok
# OPPGAVE: Gj?r n?devendige endringer, slik at l?kka nedenfor gir riktig utskrift
# I forelesningen 18. april vil vi se p? hvordan dette kan gj?res
for person in husregister:
hus = husregister[person]
print(person.hent_navn(), "eier et hus med farge", hus.hent_farge())
olas_hus = karis_hus
olas_hus.mal("gul")
print(karis_hus.hent_farge())
olas_hus = Hus("r?d")
print(karis_hus.hent_farge())
print(olas_hus)
print(karis_hus)
for person in husregister:
hus = husregister[person]
print(person.hent_navn(), "eier et hus med farge", hus.hent_farge(), hus)