Re: [問題] decorator class in a class
後來發現缺少的self,可以透過Descriptor把它加回來
===========================
class T1(object):
def __init__(self, func):
self.func = func
def __get__(self, obj, cls=None):
self.obj = obj
return self
def __call__(self, *arg, **kw):
return self.func(self.obj, *arg, **kw)
class A(object):
x = 2
@T1
def func(self):
print(self.x)
a = A()
a.func()
==============================
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.216.166.65 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1669001199.A.B0A.html
推
11/21 16:32,
2年前
, 1F
11/21 16:32, 1F
上面的code的話,用起來沒差,不過type(a.func)不是method
另外就是繼承的話。不知道會不會有問題(沒試)
※ 編輯: tsaiminghan (220.136.125.58 臺灣), 11/21/2022 18:43:18
推
11/23 01:03,
2年前
, 2F
11/23 01:03, 2F
推
11/23 01:06,
2年前
, 3F
11/23 01:06, 3F
→
11/23 01:10,
2年前
, 4F
11/23 01:10, 4F
→
11/23 01:10,
2年前
, 5F
11/23 01:10, 5F
我猜應該不要平行呼叫執行,就不太會碰到你說的問題吧?
※ 編輯: tsaiminghan (220.136.125.62 臺灣), 11/23/2022 20:10:31
推
11/23 22:30,
2年前
, 6F
11/23 22:30, 6F
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章