将一个数组过滤为3个单独的数组

llmtgqce  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(374)

我有一个非常大的数组,我正试图在python中将其拆分为三个单独的数组,例如每个i=1+3(n-i)、i=2+3(n-1)和i%3==0被排序为三个不同的数组。任何帮助都将不胜感激。

for i in range(num_steps):
    xyz0 = np.array([1.0,1,1])
    xyz[] = fsolve(Neuro, xyz0, bvals)
    re[i] =xyz[1+3(i-1)]
    rp[i] = xyz[2+3(i-1)]
        for i%3 == 0
            rs[i] = xyz[i]

这个代码毫无意义,但它是一个想法

e5nqia27

e5nqia271#

我们可以使用python的扩展切片语法。使命感 l[n::3] 我们将退回 l 从索引开始 n ,跨过 3 每一次。以下是您请求的示例:

list = [1, 2, 3, 4, 5, 6, 7, 8]

first  = list[0::3]
middle = list[1::3]
last   = list[2::3]

打印这些内容可获得所需的输出:

>>> print(first)
[1, 4, 7]
>>> print(middle)
[2, 5, 8]
>>> print(last)
[3, 6]

相关问题