如何从数组中的第n个项中减去每个n1项(Python)?

2024-10-02 14:25:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我查阅了很多关于获取数组的第n项的帖子,并使用了对偶数和奇数索引进行切片的方法。但是,最后一个对象的数组是空的。有什么建议吗?在

floc1是一个数组,我想从每个偶数元素中减去每一个奇数元素:

period = abs(floc1[0::2] - floc1[1::2])

这给了我一个空数组。在

编辑:

我已经尝试了下面评论中的所有建议。唯一产生不同错误的是:

^{pr2}$

这样可以得到:

Phi12 = ((tau)/(period))
ValueError: operands could not be broadcast together with shapes (1,8208) (0,) 

关于:

Phi12 = ((tau)/(period))

同样,floc1绝对不是空数组。我把它保存到一个文本文件中以确认。在


Tags: 对象方法元素编辑切片abs数组建议
2条回答

如果floc1list(人们通常称之为“数组”)时,您的示例会给出一个错误。对于list你可以这样做。在

>>> floc1 = [11, 5, 6, 2]
>>> it = iter(floc1)
>>> [x - next(it) for x in it]
[6, 4]

如果您喜欢看@wenzul的答案,您也可以使用zip

如果floc1是数字阵列-你已经成功了

^{pr2}$

也许您的floc1实际上是一个空数组

它不起作用,因为你试图从列表中减去一个列表。 你需要做的元素明智。在

>>> for i, k in zip(floc1[0::2], floc1[1::2]):
...     print abs(i-k)

同时查看this。在

相关问题 更多 >