I objekt-orienteret programmering ( OOP) , begrebet overordnede sammenligning operatører (mindre end , større end, lig , etc.) er afgørende. For at gøre sikker på, at objekt sammenligninger opføre sig ordentligt (det er, som du har til hensigt dem til ), skal du ændre funktionaliteten af en operatør til at afspejle, hvordan to objekter skal interagere. Python er ingen undtagelse fra reglen. Ting du skal
Python Interpreter med Interactive Development Environment (IDE)
Vis Flere Instruktioner
1
Opsæt en klasse. Denne klasse vil tjene til at definere, hvad slags sammenligninger en programmør kan kræve i løbet af et program. Kald class " sammenlign" : Hej
klasse sammenligne : Hej
Indtast følgende i IDE : Hej
. . . def __ init__ (selv , VRD1 , val2 ) : Hej
. . . self.val1 = VRD1
. . . self.val2 = val2
Dette definerer klassen med to dataværdier ( VRD1 , val2 ) , som er initialiseres , når klassen er instantieret .
2
Override " lig med" operatør . I edb-programmering , vender lighedsoperatoren kontrollerer for værdi kønnene og sandt eller falsk baseret på lighed mellem de givne værdier. Antages det, at ligestillingen af typen sammenligne afhænger VRD1 af hvert objekt , skal du indtaste følgende i IDE : Hej
. . . def __ eq__ (selv , andet) : Hej
. . . afkast ( self.val1 == other.val1 )
Dette tilsidesætter ligestilling operatør ( == ), så det kan omdefineres.
3
Kontroller resultaterne . Indtast følgende i IDE : Hej
>>> COMP1 = sammenligne (1,4 )
>>> COMP2 = sammenligne (1, 57)
>>> print ( COMP1 == COMP2 )
Ægte
COMP1 == COMP2 udskriver "Sand ", fordi de VRD1 variable er ens, og derfor per definition objekter er ens.