Sovraccaricare l'operatore ==
Gli operatori integrati di Python sono molto comodi, soprattutto quando confronti le istanze di una classe. Quando progetti le classi, puoi usare i metodi magici per cambiare il comportamento di questi operatori. Qui sovraccaricherai l'operatore == per stabilire se due istanze di Computer sono uguali.
Questo esercizio fa parte del corso
Programmazione a oggetti intermedia in Python
Istruzioni dell'esercizio
- Definisci un metodo magico per sovraccaricare l'operatore
==. - Nel metodo magico, confronta gli attributi
device_iddiselfeotherper stabilire se le due istanze sono uguali. - Verifica se
pre_upgrade_computerepost_upgrade_computersono uguali e stampa il risultato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
class Computer:
def __init__(self, device_id, storage):
self.device_id = device_id
self.storage = storage
# Overload the == operator using a magic method
def ____(self, other):
# Return a boolean based on the value of device_id
____ self.____ == other.____
pre_upgrade_computer = Computer("Y391Hky6", 256)
post_upgrade_computer = Computer("Y391Hky6", 1024)
# Create two instances of Computer, compare using ==
print(____ == ____)