+ -
当前位置:首页 → 问答吧 → perl文本处理

perl文本处理

时间:2011-09-16

来源:互联网

Class A:
def f(self):
print 'f'

a=A()
-------------------------------------------
def nf():
这里要调用a.f()
f()
---------------------------------------------
a.nf=nf 后,自动在参数表添加了self,但是不能调用self

总之,就是动态添加一个能调用class或者instance的self(也就是该class的其他属性、方法)的方法

作者: sanz   发布时间: 2011-09-16

似乎需要new.instancemethod。直接赋值不行。不确定。
反正解决了。

作者: sanz   发布时间: 2011-09-16

结帖。

import new
def new_method(self,x):
x+=1
self.f(x)

class CLS:
def f(self,x):
print x

c=CLS()
c.nm=new.instancemethod(new_method,c,c.__class__)

注:new库和版本有关,偶是2.6.5

作者: sanz   发布时间: 2011-09-16

热门下载

更多