numpy 学习汇总17 - 副本和视图,内部缓冲区( 基础学习 tcy)
发布日期:2021-06-29 14:47:31
浏览次数:3
分类:技术文章
本文共 1528 字,大约阅读时间需要 5 分钟。
副本和视图,内部缓冲区 2018/6/18 2018/11/30 说明: ndarrays共享相同数据ndarray可以是另一个ndarray 的“视图”,数据由base处理。 ndarrays也可以是Python拥有的内存strings或实现buffer或数组接口的对象的视图。 切片可以产生数组的视图 ===================================================================1.不复制 简单的赋值# Python将可变对象作为引用传递,所以函数调用不会复制。a = np.arange(12)b = ab is ab.shape = 3,4 # changes the shape of aa.shape #(3, 4)=================================================================== 2.查看视图np.view(dtype = None,type = None)具有相同数据数组的新视图 # dtype用不同的数据类型构造数组内存的视图。 # 这可能导致重新解释内存的字节对视图进行更改将更改基础数组 # 修改视图会改变原数据 # 实例1:x = np.array([(1, 2),(3,4)], dtype=[('a', np.int8), ('b', np.int8)])#array([(1, 2), (3, 4)], dtype=[('a', 'i1'), ('b', 'i1')])y = x.view(dtype=np.int16, type=np.matrix)#np.ndarray #matrix([[ 513, 1027]], dtype=int16)x.base #Noney.base #array([(1, 2), (3, 4)], dtype=[('a', 'i1'), ('b', 'i1')])y.base is x #True x.flags.owndata#Truey.flags.owndata#False y = x.view(dtype=np.int8).reshape(2,2)# array([[1, 2], [3, 4]], dtype=int8)z = x.view(np.recarray) # rec.array([(1, 2), (3, 4)],dtype=[('a', 'i1'), ('b', 'i1')]) # 实例2:x = np.array([[1,2,3],[4,5,6]], dtype=np.int16)y = x[:, 0:2] #修改会改变原数组z = y.copy()z.view(dtype=[('width', np.int16), ('length', np.int16)]) # array([[(1, 2)], [(4, 5)]], dtype=[('width', '(4, 2) ===================================================================
转载地址:https://chunyou.blog.csdn.net/article/details/84332925 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月12日 14时07分23秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
485通信自动收发电路,历史上最详细的解释
2019-04-29
一位头发发白的神人教你怎么写程序,运维,买电脑,写文章,平面设计!
2019-04-29
「第三篇」全国电子设计竞赛,这些你必须知道的比赛细节,文末附上近十年电赛题目下载...
2019-04-29
5G小科普(漫画版,So easy!)
2019-04-29
「第四篇」电赛控制题可以准备一些什么?
2019-04-29
「第六篇」对于电赛,我们应该看重什么?
2019-04-29
树莓派翻车了
2019-04-29
这位电子工程师,你不能错过。
2019-04-29
「重磅猜题之第二篇」2019年大学生电子设计竞赛
2019-04-29
干货分享 JVM 之第 3 篇 —— Java 内存结构相关
2019-04-29
基于 Hystrix 高并发服务限流第 2 篇 —— 服务隔离(线程池隔离、信号量隔离)
2019-04-29
SpringBoot 整合 JWT 实现统一认证
2019-04-29
TypeError: this.getOptions is not a function
2019-04-29
el-table 二维数组合并行
2019-04-29
UR5e机械臂运行一直阻塞在waitForServer
2019-04-29
ROS把pkg1下的某个头文件和源文件生成动态链接库供pkg2调用
2019-04-29
使用urdf_tutorial快速可视化urdf文件
2019-04-29
SQl 数据完整性(随堂博客)
2019-04-29
左连接、右连接、内连接
2019-04-29