在Python的for循环中存储值



我想通过for循环在每次迭代时存储值。电流和期望输出已附上。

import numpy as np
from array import *
ar = []
A=np.array([[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]],
[[ 10,  11, 12],
[ 13,  14,  15],
[ 16,  17,  18]]])
for x in range(0,2):
B=A[x]+1
ar.append(B) 
print(ar)

当前输出为

[array([[ 2,  3,  4],
[ 5,  6,  7],
[ 8,  9, 10]]), array([[11, 12, 13],
[14, 15, 16],
[17, 18, 19]])]

期望的输出是

array([[[ 2,  3,  4],
[ 5,  6,  7],
[ 8,  9,  10]],
[[11, 12, 13],
[14, 15, 16],
[17, 18, 19]]])

@Ali_Sh的注释是正确的,这里的用法只是b = a + 1,就是这样。

我假设你正在简化一些需要循环的复杂用例,下面是你的工作代码:

import numpy as np

a = np.array([[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]],
[[10, 11, 12],
[13, 14, 15],
[16, 17, 18]]])
ar = []
for x in range(0,2):
b = a[x, :] + 1
ar.append(b)
print(np.stack(ar))

最新更新