class Katt: def __init__(self, n, a, f, k): #Ferdiglaget konstrukt?r self.navn = n self.alder = a self.farger = f self.kjonn = k def __eq__(self, annen): #Vi lager midlertidige variabler for hver instansvariabel #De inneholder True hvis instansvariablene til de to objektene er like #De inneholder Fase hvis instansvariablene til de to objektene er ulike lik_navn = self.navn == annen.navn lik_alder = self.alder == annen.alder like_farger = self.farger == annen.farger lik_kjonn = self.kjonn == annen.kjonn #Til slutt and'er vi dem med hverandre #Jeg fant ut hvorfor alle duplikatene ikke ble fanget opp #Det var fordi vi m?tte faktisk ha parentes rundt alle variablene return (lik_navn) and (lik_alder) and (like_farger) and (lik_kjonn) #Alternativt kan vi bruke kodelinjen under #Som jeg bare har tatt fra slidene mine #Men det kan fort bli litt stygt og uoversiktlig #return (self.navn == annen.navn) and (self.alder == annen.alder) and (self.farger == annen.farger) and (self.kjonn == annen.kjonn) def __str__(self): #Her er string-metoden som jeg ogs? bare har tatt fra slidene mine return "\nNavn: " + self.navn + "\nAlder: " + str(self.alder) + "\nFarger: " + str(self.farger) + "\nKj?nn: " + str(self.kjonn)