石本です。
On Thu, 16 May 2002 00:47:11 +0900
Atsuo Ishimoto <ishimoto@...> wrote:
> この場合のfunc0, func1はこんなのでどうでしょ?
>
> class Func:
> def __init__(self, f=None):
> self.f = f
>
> def __mul__(self, r):
> return Func(lambda x, r=r: self(r(x)))
>
> def __call__(self, x):
> return self.f(x)
>
こう書いたほうが判り易いかな?
class Func:
def __mul__(self, r):
return Composit(lambda x, r=r: self(r(x)))
class Composit(Func):
def __init__(self, f=None):
self.f = f
def __call__(self, x):
return self.f(x)
# 以下は同じ。
class Func0(Func):
def __call__(self, x):
return x*2
........
........
........
........
--------------------------
Atsuo Ishimoto
ishimoto@...
Homepage:http://www.gembook.jp