== ऑपरेटर को ओवरलोड करना
Python के बिल्ट-इन ऑपरेटर्स उपयोगी होते हैं, खासकर जब किसी क्लास के इंस्टेंसेज़ की तुलना करनी हो. क्लास बनाते समय, इन ऑपरेटर्स की कार्यक्षमता बदलने के लिए मैजिक मेथड्स का उपयोग किया जा सकता है. यहाँ, आप == ऑपरेटर को ओवरलोड करेंगे ताकि यह निर्धारित किया जा सके कि Computer के दो इंस्टेंस बराबर हैं या नहीं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Intermediate Object-Oriented Programming in Python
अभ्यास निर्देश
==ऑपरेटर को ओवरलोड करने के लिए एक मैजिक मेथड डिफाइन करें.- यह तय करने के लिए कि दोनों इंस्टेंस बराबर हैं या नहीं, मैजिक मेथड में
selfऔरotherकेdevice_idएट्रिब्यूट्स की तुलना करें. - जाँचें कि
pre_upgrade_computerऔरpost_upgrade_computerबराबर हैं या नहीं, और परिणाम प्रिंट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
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(____ == ____)