class Navn : def __init__(self,fornavn,mellom,etter) : self._fornavn = fornavn self._mellom = mellom self._etter = etter # Gjenbruker metoden sortert() - # hvis den returnerer samme tekst for de to objektene, er de like: def __eq__(self,annen) : return (self.sortert() == annen.sortert()) # sortert() gir oss navnet som en string slik det skal se ut alfabetisert # vi bruker denne metoden så vi kan sammenligne navnene med '<' # (__lt__ ligger allerede implementert for klassen String!) def __lt__(self,annen) : if self.sortert() < annen.sortert() : return True else : return False # Gjenbruker metoden naturlig() for en "pen" dvs # menneskevennlig tekstlig representasjon av objektet: def __str__(self) : tekst = ("Navn: " + self.naturlig()) return tekst # repr(x) returnerer klassenavn etterfulgt av instansvariabel-verdier: def __repr__(self) : tekst = ("Navn(" + self._fornavn + "," + \ self._mellom + "," + self._etter + ")") return tekst def sortert(self) : alfNavn = self._etter + ", "\ + self._fornavn + " " + self._mellom return alfNavn def naturlig(self) : natNavn = self._fornavn + " " + self._mellom\ + " " + self._etter return natNavn n1 = Navn("a", "a", "a") n2 = Navn("b", "b", "b") if n1 < n2 : print("n1 er minst") elif n2