0
点赞
收藏
分享

微信扫一扫

numpy 拷贝的坑

颜娘娘的碎碎念 2022-03-12 阅读 70
python

numpy 拷贝

一些概念

  • 切片索引(slice): 冒号形式的索引 0:2::21(特例),都可以被视为切片索引
  • 索引数组:以数据形式索引,如 [0,1]np.array([0,1]),都可以作为索引数组
  • 不拷贝:不会分配新的内存
  • 浅拷贝:会分配新的内存,但不会递归拷贝(numpy 中与不拷贝可不加以区分)
  • 深拷贝:会分配新的内存,会递归拷贝
  • numpy 视图(view):不会分配新的内存

结论

  • 直接变量间赋值 =is 都是 浅拷贝,加.copy() 强制 深拷贝
  • 切片索引(slice index)相当于视图(view),浅拷贝list 同样是 浅拷贝
  • 采用索引数组索引是 深拷贝

例子

  • 本来是想整理些例子,但排列组合起来太多了,略去吧 (ノ_ _)ノ,理解概念比记忆好。

参考

  1. https://www.numpy.org.cn/user/basics/indexing.html#%E5%85%B6%E4%BB%96%E7%B4%A2%E5%BC%95%E9%80%89%E9%A1%B9
  2. https://blog.csdn.net/weixin_43590796/article/details/107479765
  3. https://blog.csdn.net/qq_52096207/article/details/123118661
举报

相关推荐

0 条评论