python – 了解numpy数组如何在内存中布局
发布时间:2020-12-16 21:52:54 所属栏目:Python 来源:网络整理
导读:我正在尝试使用numpy在python中使用构建OpenGL纹理,但我遇到了问题,因为我无法预测numpy数组将如何在内存中组织.下面的示例程序(应该按原样运行)说明了我的困惑: from pylab import *array_by_hand = array( [[[1,2,3,4],[1,4]],[[1,4]]],dtype='uint8')lay
我正在尝试使用numpy在python中使用构建OpenGL纹理,但我遇到了问题,因为我无法预测numpy数组将如何在内存中组织.下面的示例程序(应该按原样运行)说明了我的困惑:
虽然就python而言,这两个数组是等价的,但在内存中的布局不同,因此OpenGL的显示方式不同.有人可以解释为什么会发生这种情况以及我如何将两个数组强制转换为相同的格式? 最佳答案
如果改为调用tostring方法,它会将数组转换为C连续布局:
在您的情况下字符串不同的原因是因为dstack调用.它试图通过简单地组合源数组的底层数据然后更改numpy’s stride information来将数组堆叠在一起.这导致数组不是C连续布局. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 解决出现Incorrect integer value: '' for column
- django – CSRF验证失败.请求中止.当我发送POST请求时
- django – formfield_for_foreignkey和内联管理员
- python – 深度学习Udacity课程:Prob 2作业1(不是MNIST)
- Python初学小试
- python – 通过getattr动态获取dict元素?
- python – 通过没有循环的2D索引数组索引2D numpy数组
- python – Pandas DataFrame:如何计算组中第一行和最后一
- python – 模仿OpenCV中的“魔杖”Photoshop工具
- python开发之函数定义实例分析