मौजूद न होने वाले attributes को एक्सेस करना
कभी-कभी आप किसी ऐसे attribute को एक्सेस करने की कोशिश कर सकते हैं जो किसी ऑब्जेक्ट के namespace में मौजूद नहीं है. ऐसा होने पर आम तौर पर AttributeError उठता है. इस अभ्यास में, आप Python के एक मैजिक मेथड का उपयोग करके इस स्थिति को हैंडल करने का अभ्यास करेंगे. आनंद लें!
यह अभ्यास पाठ्यक्रम का हिस्सा है
Intermediate Object-Oriented Programming in Python
अभ्यास निर्देश
- ऐसा मेथड परिभाषित करें जो तब चले जब
BankAccountnamespace में परिभाषित न किए गए किसी attribute का संदर्भ दिया जाए; इस मेथड में पैरामीटरselfऔरnameहोने चाहिए. - मैजिक मेथड में ऐसा लॉजिक जोड़ें जो यह संदेश प्रिंट करे कि संदर्भित attribute इस ऑब्जेक्ट के लिए सेट किया जाना चाहिए.
BankAccountक्लास का एक ऑब्जेक्ट बनाएँ औरrouting_numberattribute को एक्सेस करने की कोशिश करें; आउटपुट देखें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
class BankAccount:
def __init__(self, account_number):
self.account_number = account_number
# Define a magic method to handle references to attribute
# not in an object's namespace
def ____(____, ____):
# Output a message to instruct further action
print(f"""{____} is not defined in BankAccount object.
Please define this attribute if needed.""")
# Create a BankAccount object, reference routing_number
checking_account = ____("123456")
____.____