使用np.delete时,如果使用越界索引,则会引发indexError . 当一个越界索引在np.array中使用并且该数组用作np.delete中的参数时,为什么这不会引发indexError?
np.delete(np.array([0, 2, 4, 5, 6, 7, 8, 9]), 9)
这给出了索引错误,因为它应该(索引9超出范围)
而
np.delete(np.arange(0,5), np.array([9]))
和
np.delete(np.arange(0,5), (9,))
给:
array([0, 1, 2, 3, 4])
1 回答
这是一个已知的“功能”,将在以后的版本中弃用 .
From the source of numpy:
在python中启用DeprecationWarning实际上会显示此警告 . Ref