我运行了一个索引i
,它指示如何对特定数组a
进行切片。例如
a = np.arange(10)
for i in np.arange(1, 5):
print(a[i:], a[:-i])
输出
[1 2 3 4 5 6 7 8 9] [0 1 2 3 4 5 6 7 8]
[2 3 4 5 6 7 8 9] [0 1 2 3 4 5 6 7]
[3 4 5 6 7 8 9] [0 1 2 3 4 5 6]
[4 5 6 7 8 9] [0 1 2 3 4 5]
但是,这对i=0
不起作用:
a[0:]
Out[67]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
a[:-0]
Out[68]: array([], dtype=int64)
我的预期/所需输出
a[0:]
Out[67]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
a[:-0]
Out[67]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
这种不对称的原因是什么?最终,我需要
a[i:]
和a[:-i]
来做,当i==9
a[:-0]
返回的不是预期的结果,则这将不起作用)。你知道吗我怎样才能做到这一点?你知道吗
因为
-0
是0
(至少在整数域中,最常用的表示是2-补码),一元减号首先求值。对于浮点,有两种表示形式-0
和0
,但通常编程语言会对此进行抽象。你知道吗但是,在这种情况下可以使用
None
,因此可以将其编写为:对于
i=0
,返回:相关问题 更多 >
编程相关推荐