अजगर डेकोरेटर / वर्णनकर्ता staticmethod की तरह

वोट
0

तो, पायथन के लिए अभी शुरुआत की जा रही है, मैं नहीं समझ सकता यहाँ क्या हो रहा है ...

मैं एक डेकोरेटर / वर्णनकर्ता, है कि अन्य बातों के अलावा, के व्यवहार को परिभाषित करने के कोशिश कर रहा हूँ staticmethod

भोलेपन से, मेरे डेकोरेटर / वर्णनकर्ता जो inherits बनाने की कोशिश की staticmethod। यही कारण है कि ऐसा नहीं किया ...

प्रश्न 1) क्यों? नियम यहां अलग अलग हैं? वहाँ वारिस के एक मतलब है staticmethod?

वैसे भी, पढ़ने के बाद: https://docs.python.org/3/howto/descriptor.html#id9 , मैं इस के साथ आया था:

class my_descriptor(object):
    def __init__(self, f):
        self._f = staticmethod(f)

    def __get__(self, obj, obj_type=None):
        res = self._f.__get__(obj, obj_type)()

        # HERE I DO MY STUFF...

        return res


class MyClass:
    @my_descriptor
    def my_function():
        return MyObject(...)

इस चल रहा है, यह काम करता है। अति उत्कृष्ट।

परंतु

PyCharm निशान my_functionत्रुटि के रूप में, निम्न संदेश के साथ:

विधि, एक पहले पैरामीटर होना आवश्यक है आमतौर पर 'स्वयं' कहा जाता है

प्रश्न 2) Have मैंने कुछ गलत किया है, या इस PyCharm के बग है?

प्रश्न 3) मैं या तो मामले में कैसे तय कर सकते हैं?

अग्रिम में धन्यवाद!

19/03/2020 को 21:59
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more