Os objetivos desta aula são os seguinte: compreender melhor o conceito de referência; ter um primeiro contacto com coleções de objetos. Após a realização da prática, deverá ter sido adquirida uma noção dos seguintes conceitos:
Acrescente às classes que representam rectângulos e contactos telefónicos, desenvolvidas na aula anterior, os métodos necessários para que seja possível imprimir e comparar objetos deste tipo.
class Rectangle:
def __init__(self, w, h):
self.__w = w
self.__h = h
def __eq__(self, other):
return self.__name == other.__name
def __str__(self):
return self.name + ", " + str(self.phone)
class Contact:
def __init__(self, name, phone):
self.__name = name
self.phone = phone
@property
def name(self):
return self.__name
def __eq__(self, other):
if isinstance(other, self.__class__):
return self.__name == other.__name and self.phone == other.phone
else:
return False
def __str__(self):
return self.name + ", " + str(self.phone)
p1 = Contact("Maria Albertina", 963555555)
p2 = Contact("Maria Albertina", 963555555)
print("Are they equal? ", p1 == p2)
print(p1)