说我有一个阵列x = np.arange(6).reshape(3, 2).
是什么意思x[False],或者x[np.asanyarray(False)]?两者都导致了array([], shape=(0, 3, 2), dtype=int64),这是出乎意料的.
我期望得到一个,IndexError因为一个不正确的大小的面具,从类似的东西x[np.ones((2, 2), dtype=np.bool)].
这种行为是对一致的x[True]和x[np.asanyarray(True)],既导致额外的维度:array([[[0, 1], [2, 3], [4, 5]]]).
我正在使用numpy 1.13.1.最近似乎行为发生了变化,因此虽然为旧版本提供答案很好,但请在答案中提及您的版本.
编辑
为了完整起见,我根据这个问题的评论提交了https://github.com/numpy/numpy/issues/9515.
编辑2
并几乎立即关闭它.