gpt4 book ai didi

python - Numpy:将子数组添加到自身的输出

转载 作者:行者123 更新时间:2023-11-28 18:59:33 25 4
gpt4 key购买 nike

想知道这个 numpy 输出背后的逻辑是什么。基本上,我试图通过使用以下代码进行切片来将 numpy 数组的一个子集添加到自身。

x = np.zeros((10,))
x[:3] += 1
print x
x[2:] += x[:-2]
print x

原始 x:

[ 1.  1.  1.  0.  0.  0.  0.  0.  0.  0.]

预期输出:

[ 1.  1.  2.  1.  1.  0.  0.  0.  0.  0.]

然而,它返回了以下结果,这完全出乎我的意料。有人知道这里的逻辑是什么吗?

实际输出:

[ 1.  1.  2.  1.  2.  1.  2.  1.  2.  1.]

编辑:问题似乎特定于 numpy 1.11.3。在 numpy 1.15.4 的环境中再次尝试,它返回了预期的输出。

最佳答案

使用您的代码,我得到了预期的输出:

x = np.zeros((10,))

x[:3] += 1

x
array([1., 1., 1., 0., 0., 0., 0., 0., 0., 0.])

x[2:] += x[:-2]

x
array([1., 1., 2., 1., 1., 0., 0., 0., 0., 0.])

关于python - Numpy:将子数组添加到自身的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54216420/

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