将更新的矩阵附加到列表时如何避免覆盖?

问题描述 投票:0回答:1

我将尝试尽可能简单地解释这一点...以下代码摘自我定义的函数。我正在更新每个步骤的值R,据我所知可以正常工作。 R是一个矩阵,我需要将每个更新的矩阵添加到列表R_list_eq。当我打印列表时,我确实得到了一个矩阵列表,但是它们都是一样的,所以我猜代码在某个地方被覆盖了。

R_list_eq = []

R, V, F, box_width = md.initialize_particles(n_atoms, temperature, rho, eps)

for n in range(20000):
    R += dt * V + 0.5 * dt**2 * F
    if n > 10000:
        R_list_eq.append(R)
python list matrix variable-assignment
1个回答
0
投票

如果有陈述if n > 10000 and R not in R_list_eq:,我已经编辑过您,这将避免覆盖。

R_list_eq = []

R, V, F, box_width = md.initialize_particles(n_atoms, temperature, rho, eps)

for n in range(20000):
    R += dt * V + 0.5 * dt**2 * F
    if n > 10000 and R not in R_list_eq:
        R_list_eq.append(R)
© www.soinside.com 2019 - 2024. All rights reserved.