मैंने निम्नलिखित रैपर वर्ग लिखा है। मैं __setattr__
को परिभाषित करना चाहता हूं जैसे कि यह सभी विशेषताओं को लिपटे वर्ग में रीडायरेक्ट करता है। हालांकि, यह मुझे रैपर वर्ग शुरू करने से रोकता है। इसे ठीक करने का कोई शानदार तरीका?आरंभ करने के बाद तक `__setattr__` को अक्षम करने का क्लीन तरीका
class Wrapper:
def __init__(self, value):
# How to use the default '__setattr__' inside '__init__'?
self.value = value
def __setattr__(self, name, value):
setattr(self.value, name, value)
क्या 'Wrapper' लपेट करता है? यह 'ऑब्जेक्ट' का उत्तराधिकारी क्यों नहीं है? –
@ टिचोड्रोमा यह कुछ भी लपेटता है। मैं इसे एक जीयूआई आवेदन में उपयोग कर रहा हूँ; जब संलग्न वस्तु संशोधित होती है तो रैपर श्रोताओं को सूचित करता है। यह 'ऑब्जेक्ट' से प्राप्त नहीं होता है क्योंकि मैं केवल पायथन 3. –