MulaiMulai sekarang secara gratis

Melakukan overloading pada operator ==

Operator bawaan Python sangat berguna, terutama saat membandingkan instance sebuah kelas. Saat membangun kelas, magic method dapat digunakan untuk mengubah fungsi operator-operator ini. Di sini, Anda akan melakukan overloading pada operator == untuk menentukan apakah dua instance Computer bernilai sama.

Latihan ini adalah bagian dari kursus

Pemrograman Berorientasi Objek Tingkat Menengah di Python

Lihat Kursus

Petunjuk latihan

  • Definisikan sebuah magic method untuk melakukan overloading pada operator ==.
  • Bandingkan atribut device_id dari self dan other di dalam magic method untuk menentukan apakah kedua instance tersebut sama.
  • Periksa apakah pre_upgrade_computer dan post_upgrade_computer sama, lalu cetak hasilnya.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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(____ == ____)
Edit dan Jalankan Kode