作者sandaniel (喵喵喵)
看板Python
标题Re: [问题] Class如何决定method
时间Wed Apr 25 22:51:47 2012
※ 引述《sandaniel (喵喵喵)》之铭言:
: class AAA(object):
: def A1(self,p):
: return p*1
: def A2(self,p):
: return p*2
: def CTRL(self,index,p):
: varname = 'A'+str(index)
: return self.varname(p)
: 使用
: a = AAA()
: a.CTRL(1,100)
: [问题]
: 如何在物件内的CTRL中指定method名称,然後传回该method计算结果?
: 物件属性是用 vars(self)[varname] 来操作,那method呢?
自问自答
self.__getattribute__(varname)(p)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.230.192.150
1F:→ KSJ:也可以用 getattr(self,varname)(p) 04/26 09:20
2F:推 darkgerm:原 PO 这个方法好像是 3 才可以用 04/26 10:43