如何将迭代公式转换为 Python
How to translate an iterative formula into Python
我是 Python 的初学者,我正在尝试将此公式转换为 Python 以创建一个向量,这要归功于 :
CN formula
我试过这段代码:
CN_mod_0 = []
CN = []
CN[0] = 35
for i in range(1,96):
CN[i] = 1200 / (1200/CN[i-1] + (e_num_H_0[i]- (p_num_H_0[i-1] - d_num_H_0[i-1])))
CN_mod_0.append(CN[i])
CN_mod_0
但是我输入的初始值CN[0]有问题...
向量 e_num_H_0、p_num_H_0 和 d_num_H_0 的长度均为 96。
非常感谢您的帮助
澄清一下,您可以使用其中已有的元素来初始化列表。
CN = [35]
在这种情况下,如果您想用 96 个元素初始化 CN,您可以执行以下任一操作:
CN = [0] * 96
它给你一个长度为 96 的列表,用 0 填充,或者你可以使用 numpy:
import numpy as np
CN = np.zeroes(96)
给出长度为 96 的数组,再次用 0 填充。当您遍历 for 循环时,第 i 个位置的 CN 数组将更新为您的公式计算出的值。最后,我应该提到 python 索引从 0 开始,所以你的 for 循环应该是:
for i in range(95):
# do something
这将从第 0 个索引开始计数,并计算最后一个元素,即第 95 个索引。
我是 Python 的初学者,我正在尝试将此公式转换为 Python 以创建一个向量,这要归功于 :
CN formula
我试过这段代码:
CN_mod_0 = []
CN = []
CN[0] = 35
for i in range(1,96):
CN[i] = 1200 / (1200/CN[i-1] + (e_num_H_0[i]- (p_num_H_0[i-1] - d_num_H_0[i-1])))
CN_mod_0.append(CN[i])
CN_mod_0
但是我输入的初始值CN[0]有问题... 向量 e_num_H_0、p_num_H_0 和 d_num_H_0 的长度均为 96。
非常感谢您的帮助
澄清一下,您可以使用其中已有的元素来初始化列表。
CN = [35]
在这种情况下,如果您想用 96 个元素初始化 CN,您可以执行以下任一操作:
CN = [0] * 96
它给你一个长度为 96 的列表,用 0 填充,或者你可以使用 numpy:
import numpy as np
CN = np.zeroes(96)
给出长度为 96 的数组,再次用 0 填充。当您遍历 for 循环时,第 i 个位置的 CN 数组将更新为您的公式计算出的值。最后,我应该提到 python 索引从 0 开始,所以你的 for 循环应该是:
for i in range(95):
# do something
这将从第 0 个索引开始计数,并计算最后一个元素,即第 95 个索引。