Python 如何将运算符设置为for循环中的函数?
我想用一个递归公式,x(I+1)=x(I)+h 我如何在for循环中输入它,同时找到与之对应的y值并将其分配到数组中。我试过了Python 如何将运算符设置为for循环中的函数?,python,python-3.x,Python,Python 3.x,我想用一个递归公式,x(I+1)=x(I)+h 我如何在for循环中输入它,同时找到与之对应的y值并将其分配到数组中。我试过了 for i in range(n): i+1 = y(i) + h dydx[i] = (y[i+1]+y[i-1]-y[i])/h**2 dydx0 = [dydx[0]] print(dydx0) 这显然给了我一个错误,但我想不出如何用另一种方法来做到这一点。有人能帮忙吗 def f(x): return cos(pi*e
for i in range(n):
i+1 = y(i) + h
dydx[i] = (y[i+1]+y[i-1]-y[i])/h**2
dydx0 = [dydx[0]]
print(dydx0)
这显然给了我一个错误,但我想不出如何用另一种方法来做到这一点。有人能帮忙吗
def f(x):
return cos(pi*exp(-x))
h = 0.01
x = linspace(a,b,n+1)
print(x)
y = f(x)
dydx = zeros(n+1)
for i in range(n):
dydx[i] = (y[i+1]+y[i-1]-y[i])/h**2
dydx0 = [dydx[0]]
print(dydx0)
在dydx公式中,当我计算dydx[I]=(y[I+1]+y[I-1]-y[I])/h**2时,我想做y(x+h)+y(x-h)-y(x)/h,但使用I作为x[I+1]=x[I]+h。因此,例如y[i+1]应该是在x[i+1]处计算y的平均值,其本身取决于h..看起来您对Python非常陌生!有两种句法模式可以帮助您进行以下操作:
values_of_x = []
values_of_y = []
initial_x = 10
number_of_recursions = 100
values_of_x.append(initial_x)
values_of_y.append(y(initial_x))
for i in range(number_of_recursions):
current_x = values_of_x[-1]
next_x = current_x + h
next_y = y(next_x)
values_of_x.append(next_x)
values_of_y.append(next_y)
print('Values of x displayed below:')
print(values_of_x)
print('Values of y displayed below:')
print(values_of_y)
这假设您已经定义了一个函数y(),该函数接受x的值并返回一个值,尽管从示例代码判断,您可能正在做比这更复杂的事情 请修复缩进和格式部分的格式已经为您修复,但我仍然不认为这可以回答。请查看如何创建缩进,缩进仍然不正确。您能澄清您的问题吗?在dydx公式中,当我计算dydx[I]=(y[I+1]+y[I-1]-y[I])/h**2时,我想计算y(x+h)+y(x-h)-y(x)/h,但使用I作为x[I+1]=x[I]+h。例如,y[i+1]应该是平均值,在x[i+1]处计算y,它本身取决于h。,对不起,我现在编辑了这个问题@roganjosh