`==` ओवरलोड करना
ओवरलोडिंग की मदद से आप बिल्ट-इन ऑपरेटर्स की फ़ंक्शनैलिटी को मैजिक मेथड्स के जरिए कस्टमाइज़ कर सकते हैं. इस उदाहरण में, आप Computer क्लास के लिए == कंपैरिज़न ऑपरेटर को ओवरलोड करेंगे, जहाँ हर डिवाइस का सीरियल नंबर तुलना के लिए इस्तेमाल होगा. चलिए शुरू करें!
यह अभ्यास पाठ्यक्रम का हिस्सा है
Intermediate Object-Oriented Programming in Python
अभ्यास निर्देश
- दो ऑब्जेक्ट्स की तुलना में इस्तेमाल होने वाले
==ऑपरेटर को ओवरलोड करने के लिए एक मैजिक मेथड परिभाषित करें. - यह जाँचने के लिए कि Computer क्लास के दो ऑब्जेक्ट्स समान हैं या नहीं,
serial_numberएट्रिब्यूट का उपयोग करें. - एक ही
serial_numberवालेComputerटाइप के दो ऑब्जेक्ट्स बनाएँ और सत्यापित करें कि ये ऑब्जेक्ट्स समान हैं.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
class Computer:
def __init__(self, serial_number):
self.serial_number = serial_number
# Overload the == operator using a magic method
def ____(self, ____):
# Define equality using serial_number
____ self.____ == other.____
# Validate two Computers with the same serial_number are equal
first_computer = Computer("81023762")
second_computer = ____("81023762")
print(____ ____ ____)