【问题标题】:How to translate an iterative formula into Python [closed]如何将迭代公式转换为 Python [关闭]
【发布时间】:2021-05-15 19:39:24
【问题描述】:

我是 Python 的初学者,我正在尝试将这个公式翻译成 Python 来创建一个向量,这要归功于一个 boucle :

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。

非常感谢您的帮助

【问题讨论】:

    标签: python for-loop vector indexing iteration


    【解决方案1】:

    澄清一下,您可以使用其中已有的元素来初始化列表。

    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 个索引。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-22
      • 1970-01-01
      • 1970-01-01
      • 2010-11-30
      • 1970-01-01
      • 1970-01-01
      • 2021-12-06
      • 1970-01-01
      相关资源
      最近更新 更多