durukyöntem gibi piton dekoratör / açıklayıcısı

oy
0

Yani, Python için bir acemi olmak, burada neler olduğunu anlayamıyorum ...

Başka şeylerin yanı sıra sahip bir dekoratör / tanımlayıcı,, davranışını tanımlamak çalışıyorum staticmethod.

Safça, hangi devralır benim dekoratör / tanımlayıcısı yaratmaya çalışmışlardır staticmethod. O yapmadı ...

Soru 1) Neden? Burada kural farklı mı? Devralır için ortalama var mı staticmethod?

Neyse, okuma sonrası: https://docs.python.org/3/howto/descriptor.html#id9 , ben bu geldi:

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(...)

Bu Koşu, işe yarıyor. Mükemmel.

FAKAT

Pycharm işaretleri my_functionaşağıdaki iletiyle hata olarak:

Yöntem genellikle öz 'olarak adlandırılan bir ilk parametre olmalıdır

Soru 2) Var bir şey yanlış yapmış veya bu pycharm en hatadır?

Soru 3) Ben her iki durumda da nasıl düzeltebilirim?

Şimdiden teşekkürler!

Oluştur 19/03/2020 saat 21:59
kaynak kullanıcı
Diğer dillerde...                            

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