Python 将列表存储到另一个列表中

Python 将列表存储到另一个列表中,python,python-3.x,for-loop,Python,Python 3.x,For Loop,我试图将不同的平均值列表保存到一个名为 storage\u risk\u prem使用以下代码: storage_risk_prem=list(range(len(simul_data))) avg_risk_prem=list(range(len(simul_data[0]))) for i in range(len(simul_data)): for j in range(len(avg_risk_prem)): avg_ris

我试图将不同的平均值列表保存到一个名为
storage\u risk\u prem
使用以下代码:

    storage_risk_prem=list(range(len(simul_data)))
    avg_risk_prem=list(range(len(simul_data[0])))
    for i in range(len(simul_data)):
        for j in range(len(avg_risk_prem)):
            avg_risk_prem[j]=np.average(simul_data[i][j])
        ***storage_risk_prem[i]=avg_risk_prem***

    storage=list(range(len(simul_data)))
    w_mean_i=list(range(len(simul_data)))
    w_std_i=list(range(len(simul_data)))
    for i in range(len(w_mean_i)):
        w_mean_i[i]=w.dot(storage_risk_prem[i])
        w_std_i[i]=np.sqrt(w.dot(cal_vcov_sim(simul_data)[i].dot(w)))
        storage[i]=(w_mean_i[i],w_std_i[i])
    return storage
然而,当我检查结果时,它只存储了相同的平均值列表(std位可以)


所以检查了我的代码,发现斜体的行导致了问题,但我不知道如何避免这个问题,而不使用
np.vstack
,但我不想滥用这么多导入来改进我的编程。

这是因为使用您的方法可以多次向列表添加指针。 每次都必须复制元素,例如使用列表(my_列表)


如果您想要为每个
i
创建一个新的
avg\u risk\u prem
列表,您当然应该在循环内部创建它。现在,您将它们显式地设置为同一个列表。您不能在代码块中使用斜体。“导致问题”什么问题,以及模拟数据的内容是什么
a=[1,2,3]
b=[list(a), list(a)]
b
=> [[1, 2, 3], [1, 2, 3]]

a[0] = 10
b
=> [[1, 2, 3], [1, 2, 3]]