Skip to main content
 首页 » 编程设计

python之如何存储在循环中计算的值

2025年05月04日12birdshome

我想将在每个循环中计算的值存储在一个数组中。

Q2 = np.array([20, 25, 30, 25, 20, 15, 10, 15, 20, 25, 30, 25, 20]) 
Q3 = np.array([40, 45, 50, 45, 40, 35, 30, 35, 40, 45, 50, 45, 40]) 
 
 
for i in range(13):    
    m = GEKKO()             # create GEKKO model 
    x = m.Var(value=0)      # define new variable, initial value=0 
    y = m.Var(value=0)      # define new variable, initial value=1 
    z = m.Var(value=0) 
    m.Equations([x - y == Q2[i], y + z == Q3[i], 
                 K[0]*x**2 + K[1]*y**2 - K[2]*z**2 == 0]) # equations 
    m.solve(disp=False)     # solve 
 
    print([x.value, y.value, z.value]) # print solution 

对于每个 Q(i),我希望得到:x.value(i), y.value(i), z.value(i)

现在它会打印所有答案,但我希望它存储在矩阵中。

请您参考如下方法:

与前面的答案类似,您也可以使用 numpy 数组和列表来执行此操作。由于简单,我通常使用嵌套列表。

这是一个例子:

my_list = [] 
for i in range(3): 
    my_list.extend([i,i*2,i*3]) 
print(my_list) 
 
OUTPUT 
[[0, 0, 0], [1, 2, 3], [2, 4, 6]]