En la programación orientada a objetos (POO), el concepto de operadores de comparación primordiales (menor que, mayor que, igual a, etc) es esencial. Con el fin de asegurarse de que las comparaciones de objetos se comportan adecuadamente (es decir, a medida que se pretende), debe modificar la funcionalidad de un operador para reflejar cómo dos objetos deben interactuar. Python no es una excepción a la regla.
Dificultad: moderada Desafiando Instrucciones
Lo que necesita
Python Interpreter con el entorno interactivo de desarrollo (IDE)
Crear una clase. Esta clase servirá para definir qué tipo de comparaciones un programador podría requerir en el curso de un programa. Llame a la clase de "comparar":
clase compare:
Escriba lo siguiente en el IDE:
. . . def __ init__ (self, val1, val2):
. . . self.val1 = val1
. . . self.val2 = val2
Esto define la clase con dos valores de datos (val1, val2), que se inician cuando se crea una instancia de la clase.
Reemplazar el "iguales" operador. En la programación de computadoras, la igualdad entre los controles del operador para la igualdad de valores y devuelve verdadero o falso sobre la base de la igualdad de los valores dados. Suponiendo que la igualdad de tipo de comparación depende de la val1 de cada objeto, escriba lo siguiente en el IDE:
. . . def __ eq__ (self, otro):
. . . return (self.val1 == other.val1)
Esto anula el operador de igualdad (==) para que pueda ser redefinida.
Compruebe los resultados. Escriba lo siguiente en el IDE:
componente1 = compare (1,4)
comp2 = compare (1, 57)
print (componente1 == comp2)
Verdadero
componente1 == comp2 se imprimirá "Verdadero", porque los val1 variables son iguales, y por lo tanto, por definición, los objetos son iguales.
No hay comentarios:
Publicar un comentario