当传递列表而不是numpy中的元组时进行高级切片

当传递列表而不是numpy中的元组时进行高级切片,第1张

当传递列表而不是numpy中的元组时进行高级切片

该规则有一个例外。“高级索引”文档部分没有提及它,但在“基本切片和索引”部分的开头附近,您会看到以下文本:

为了保持与Numeric中的常用用法向后兼容, 如果选择对象是包含切片对象 ,省略号对象或newaxis对象但不
包含切片对象的任何非ndarray序列(例如列表)则也将启动基本切片 。整数数组或其他嵌入式序列。


a[[1,np.array(2)]]
并不会触发基本索引。它将触发向后兼容性逻辑的未记录部分,如源代码中的注释所述:

    

np.array(2)
名单内引起仿佛它是一个元组,待处理的名单,但结果
a[(1,np.array(2))]
仍是一种先进的索引 *** 作。最终,将
1
和和
2
应用于不同的轴,这与不同
a[[1, 2]]
,结果最终看起来与相同
a[1,2]
,但是如果您使用3D进行尝试
a
,则会生成一个副本而不是视图。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5646415.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存