我试图在一个逐n numpy数组中稍微增加一个值。然而,python似乎根本没有改变值。不会抛出任何错误(当返回值意外为零时,程序中的其他地方除外)
def numerical_partial_derivative(f, x, i, dx = delta):
print("delta:", delta)
print("x type:", type(x))
x_bip = x
x_bop = x
x_bip[i] = x_bip[i] + delta
x_bop[i] = x_bop[i] - delta
print("x, x_bip, x_bop:", x, x_bip, x_bop)
return ((f(x_bip) - f(x_bop)) / (2 * dx))
但调用此函数时,我的输出是(无论我使用什么dx值):
delta: 1
x type: <class 'numpy.ndarray'>
x, x_bip, x_bop: [-2. 2.] [-2. 2.] [-2. 2.]
这怎么可能?直接调用代码或在ipython笔记本中调用代码都不起作用。 我在其他地方也有类似的问题,numpy数组拒绝接受新值
目前没有回答
相关问题 更多 >
编程相关推荐