我会写一个简单的包装,类似
def partial_derivative(func, var=0, point=[]): args = point[:] def wraps(x): args[var] = x return func(*args) return derivative(wraps, point[var], dx = 1e-6)
演示:
>>> partial_derivative(foo, 0, [3,1])6.0000000008386678>>> partial_derivative(foo, 1, [3,1])2.9999999995311555



