是否有标准的decorator用于对函数参数应用asarray
?
我可以写些东西:
@array_args # this decorator automatically calls asarray on arguments
def f(x,y):
return x/y
而不是
def f(x,y):
(x,y)=(numpy.asarray(x), numpy.asarray(y))
return x/y
我只找到这个,所以我可以把装饰工拉到那里;但是我会
更喜欢使用集成到
numpy
中的版本。 最佳答案
虽然它不存在,但是写一个很简单:
from functools import wraps
def array_args(func):
@wraps(func)
def wrapper(*args):
arrays = map(np.asarray, args)
return func(*arrays)
return wrapper