You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中合并两次迭代生成的含numpy数组的列表问题

解决两次迭代中numpy数组列表的合并问题

你当前的问题在于第二次迭代时已经把A覆盖成了迭代2的列表,执行A=A+A自然只会把当前的A(也就是迭代2的列表)和自身拼接,得到两个相同的迭代2数组。

要实现期望的合并效果,你需要保留第一次迭代的列表内容,再和第二次的列表合并,具体有两种常见方式:

方式一:保留第一次迭代的列表副本

import numpy as np

# 迭代1:初始化并保存副本
A = [np.array([[1], [2], [3]])]
A_iter1 = A.copy()  # 保存第一次迭代的列表

# 迭代2:生成新的列表
A = [np.array([[1.3], [2.7], [3.5]])]

# 合并两次迭代的列表
A = A_iter1 + A

执行后A的结果为:

[array([[1],
       [2],
       [3]]), array([[1.3],
       [2.7],
       [3.5]])]

方式二:迭代时直接追加元素(不覆盖原列表)

如果迭代过程中不需要每次重新赋值A,可以直接在原列表上追加新的numpy数组:

import numpy as np

# 迭代1:初始化列表
A = [np.array([[1], [2], [3]])]

# 迭代2:直接追加新的数组,而非重新赋值A
new_array = np.array([[1.3], [2.7], [3.5]])
A.append(new_array)

最终A同样会得到你期望的输出结果。

内容的提问来源于stack exchange,提问作者user19862793

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 15:03:34