I objektorientert programmering ( OOP ) , begrepet overordnede sammenligning operatører (mindre enn , større enn, lik , etc. ) er viktig. For å være sikker på at objektet sammenligninger oppføre seg ordentlig (det er, som du har tenkt dem til) , må du endre funksjonaliteten til en operatør å reflektere hvordan to objekter skal samhandle . Python er ikke noe unntak fra regelen . Du trenger
Python tolk med Interactive Development Environment ( IDE )
Vis flere instruksjoner
en
Sett opp en klasse . Denne klassen vil tjene til å definere hva slags sammenligninger en programmerer kan kreve i løpet av et program . Ring klassen " sammenligne" : en
klasse sammenligne:
Skriv inn følgende i IDE : en
. . . def __ init__ (egen , val1 , verdi2 ) : en
. . . self.val1 = val1
. . . self.val2 = verdi2
p Dette definerer klassen med to dataverdier ( val1 , verdi2 ) , som er initialisert når klassen startes .
2
Overstyr "likeverdige " operator . I dataprogrammering, returnerer likhetsoperator sjekker for verdi likestilling og sant eller usant basert på likestilling mellom gitte verdier . Forutsatt at likestilling av typen sammenligne avhenger val1 for hvert objekt , skriv inn følgende i IDE : en
. . . def __ eq__ (egen , annet):
. . . avkastning ( self.val1 == other.val1 )
p Dette overstyrer likestilling operator ( == ) slik at den kan omdefineres .
3
Sjekk resultatene . Skriv inn følgende i IDE : en
>>> COMP1 = sammenligne ( 1,4)
>>> comp2 = sammenligne ( 1 , 57 )
>>> print ( COMP1 == comp2 )
Ekte
COMP1 == comp2 vil skrive ut " Ekte " fordi de verdi1 variablene er like, og dermed per definisjon objekter er like.