numpy的N维数组对象ndarray

本文详细介绍了NumPy的ndarray对象,包括构造数组的方法、内存布局、数组属性和方法。重点讨论了内存布局中的步幅和数据类型,以及数组的转换、形状操作、元素选择和计算等关键特性。
摘要由CSDN通过智能技术生成

The N-dimentional array 即 ndarray 对象,是用于存放同类型元素的多维数组,元素索引由0下标开始

constructing arrays

创建一个 ndarray 只需调用 NumPy 的 array 函数即可:

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

(或者numpy.zeros, numpy.empty)
在这里插入图片描述

Internal memory layout of an ndarray

ndarray 对象在计算机内存中由连续的一维的段(segment)组成,每个元素占用相同大小的存储区域(内存块),并且所有块的解释方式完全相同。结合索引(index),将每个元素映射到内存块中的一个位置(location of an item in the block),内存块以行顺序(C样式)或列顺序(F样式或MatLab风格) 保存元素(不同的方案,将N维数组的元素项安排在一维内存块中)。

ndarray内部由以下内容组成:

[1] ndarray 本身,包括了数组的形状(指定了索引可以变化的范围)
[2] 指针(header),指向内存或内存映射文件中的一块数据
[3] 数据类型对象 (dtype),描述与数组元素相对应的固定大小的内存块中的字节。包括数据类型(ndarray数组元素是同一类型的,整型,浮点数,…),数据大小(占用字节数),数据字节顺序(big/little-endian)等。
在这里插入图片描述

Array attributes

数组属性反映了数组本身固有的信息。其中一部分可以被重置,而无需创建新的数组。

Memory Layout

ndarray.flags 有关数组的内存布局memory layout的信息。
ndarray.shape 数组维度的元组。
ndarray.ndim 数组的维数。
ndarray.size 数组中元素的数量。
ndarray.data 实际数组元素的缓冲区,指向数组数据的开头(数组内存地址是连续存放的)通常我们不需要使用这个属性,因为我们总是通过索引来使用数组中的元素。
ndarray.itemsize 数组一个元素的长度(以字节为单位)
ndarray.nbytes 数组元素消耗

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值