gpt4 book ai didi

python - 无法将矩阵 append 到python中的数组

转载 作者:行者123 更新时间:2023-12-04 08:40:20 24 4
gpt4 key购买 nike

我一直在用 Python 编写一些代码,这些代码应该从一个起始矩阵返回一个矩阵数组。基本上,你给函数一个矩阵,并且有一些 if 条件会改变其中的某些数字,然后我将该矩阵添加到所有矩阵的列表中,但结果是每次我添加一个新矩阵时,我都会添加完全相同的矩阵.
这是我的代码:

arr = []
arr.append(staring_mat)

test = arr[:] # copying arr

matrix = staring_mat

for k in range(10):
temporary = matrix
for i in range(20):
for j in range(20):
number = do_something(i,j,temporary)
if number < 15:
temporary[i][j] = 12
if number > 60:
temporary[i][j] = 54
.
.
.
test.append(temporary)

for num in range(len(test)):
print(test[num])
print('\n')

matrix = temporary

arr.extend(test)

最佳答案

matrix = staring_mat
temporary = matrix
通过这样做,您正在创建一个浅拷贝,对副本的更改也会影响原始副本。你应该创建一个深拷贝, here是文档。
test = arr[:]
在这里,您正在创建一个深拷贝。

关于python - 无法将矩阵 append 到python中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64596510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com