class foo(object):
def __init__(self,f):
self.f = f
def __call__(self,args_list):
def wrapped_f(args_list):
return [self.f(*args) for args in args_list]
return wrapped_f(args_list)
if __name__=='__main__':
class abc(object):
@foo
def f(a,b,c):
return a+b+c
a = range(5)
b = range(5)
c = range(5)
data = list(zip(a,b,c))
print(abc.f(data))
私はこれを数年前に書きました。f(X)
関数を飾ると。@foo
になり
f(list of Xs)
ます。
このプロセスは何と呼ばれていますか?それは何ですか?その関数型プログラミングの名前は何ですか?
カリー化していない。私は単純なmap9(f,list of Xs)
ことがそれをすることができたかもしれないことを知っています。
数学的に呼ばれるデコレータ/デコレーションの操作とは何ですか?