参考官方文档链接:

narray是Numpy的基本数据结构,本文主要分析对象的属性(可通过.进行访问)

1:导入numpy:

import numpy as np

2:初始化narray对象:

>>> x = np.array([[1, 2, 3], [4, 5, 6]], np.int32)
>>> x
array([[1, 2, 3],
[4, 5, 6]], dtype=int32)

3:查看np对象的行列sharp(np.shape)(返回两个元素元组,分别是行,列.):

>>> x.shape
(2, 3)

4:查看np对象的内存布局(np.flags)(详情点这里):

>>> x.flags
C_CONTIGUOUS : True :The data is in a single, C-style contiguous segment.
F_CONTIGUOUS : False :The data is in a single, Fortran-style contiguous segment.
OWNDATA : True :The array owns the memory it uses or borrows it from another object.
WRITEABLE : True :The data area can be written to.
ALIGNED : True :The data and all elements are aligned appropriately for the hardware.
UPDATEIFCOPY : False :(Deprecated, use WRITEBACKIFCOPY) This array is a copy of some other array. When this array is deallocated, the base array will be updated with the contents of this array.

5:查看数组的大小:(np.size)(即所有元素个数Number of elements in the array.):

>>> x.size
6

6:遍历数组时,在每个维度中步进的字节数组(np.strides)(Tuple of bytes to step in each dimension when traversing an array.):

>>> x
array([[1, 2, 3],
[4, 5, 6]], dtype=int32)
>>> x.strides
(12, 4)
以本片代码为例:int32位占据4个字节的数据,因此同行内移动一个数据至相邻的列需要4个字节,移动到下一行相同列需要(元素大小4*列数3)12个字节
>>> x = np.array([[1, 2, 3], [4, 5, 6]], np.int64)
>>> x.strides
(24, 8)

7:查看数组维度(np.ndim)(Number of array dimensions.):

>>> x.ndim
2

8:查看数组内存缓冲区的开始位置(np.data)(Python buffer object pointing to the start of the array’s data.):

>>> x.data
<memory at 0x7f49c189a990>

9:查看数组每一个元素所占的内存大小(np.itemsize)(Length of one array element in bytes.):

>>> x = np.array([1, 2], np.complex128)
>>> x.itemsize
16
>>> x = np.array([1, 2], np.int16)
>>> x.itemsize

10:查看数组元素消耗的总字节(np.nbytes)(Total bytes consumed by the elements of the array.):

>>> x = np.array([1, 2], np.int16)
>>> x.nbytes
4

11:查看数组的基对象(np.base)(Base object if memory is from some other object.)

>>> x = np.array([[1, 2, 3], [4, 5, 6]], np.int64)
>>> x.base
>>> y = x[1:] (分片后的对象与原对象共享内存)
>>> y.base
array([[1, 2, 3],
[4, 5, 6]])

请以官方文档为准,有问题可以留言,

Numpy narray对象的属性分析的更多相关文章

  1. 3.1Python数据处理篇之Numpy系列(一)---ndarray对象的属性与numpy的数据类型

    目录 目录 (一)简单的数组创建 1.numpy的介绍: 2.numpy的数组对象ndarray: 3.np.array(list/tuple)创建数组: (二)ndarray对象的属性 1.五个常用 ...

  2. C# Exception 对象的属性

    关于 C# 中 Exception 对象的属性,在程序出现异常时,需要记录异常的信息,并把信息保存起来或输出,以方便准确定位异常的根源,以下是 Exception  对象的属性 名称          ...

  3. 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)

    6.4  工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...

  4. JS中的RegExp对象常用属性和方法

    JavaScript提供了一个RegExp对象来完成有关正则表达式的操作和功能,每一条正则表达式模式对应一个RegExp实例.有两种方式可以创建RegExp对象的实例. 使用RegExp的显式构造函数 ...

  5. 非常易于理解‘类'与'对象’ 间 属性 引用关系,暨《Python 中的引用和类属性的初步理解》读后感

    关键字:名称,名称空间,引用,指针,指针类型的指针(即指向指针的指针) 我读完后的理解总结: 1. 我们知道,python中的变量的赋值操作,变量其实就是一个名称name,赋值就是将name引用到一个 ...

  6. numpy 数组对象

    numpy 数组对象NumPy中的ndarray是一个多维数组对象,该对象由两部分组成:实际的数据,描述这些数据的元数据# eg_v1 import numpy as np a = np.arange ...

  7. OpenCV中图像的BGR格式及Img对象的属性说明

    1. 图像的BGR格式说明 OpenCV中图像读入的数据格式是numpy的ndarray数据格式.是BGR格式,取值范围是[0,255]. 如下图所示,分为三个维度: 第一维度:Height 高度,对 ...

  8. js中 对象名.属性名和对象名['属性名']的区别,.和[]的区别

    对象中的对象名[ ' 属性名 ' ] 和 对象名.属性名的区别 话不多少,上图分析,菜鸟刚学几个月,如有错误,欢迎大佬们指出 这里是很显而易见的! 然后我们用for in 对他进行遍历,他的区别就出来 ...

  9. vue-learning:41 - Vuex - 第二篇:const store = new Vue.Store(option)中option选项、store实例对象的属性和方法

    vuex 第二篇:const store = new Vue.Store(option)中option选项.store实例对象的属性和方法 import Vuex from 'vuex' const ...

随机推荐

  1. POJ.2251 Dungeon Master (三维BFS)

    POJ.2251 Dungeon Master (三维BFS) 题意分析 你被困在一个3D地牢中且继续寻找最短路径逃生.地牢由立方体单位构成,立方体中不定会充满岩石.向上下前后左右移动一个单位需要一分 ...

  2. Java高级应用之泛型与反射20170627

    /*************************************************************************************************** ...

  3. 出现错误日志:The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path

      tomcat6出现错误日志: 信息: The APR based Apache Tomcat Native library which allows optimal performance in  ...

  4. mysql 如何解决字段不区分大小写的问题

    当我们输入不管大小写都能查询到数据,例如:输入 aaa 或者aaA ,AAA都能查询同样的结果,说明查询条件对大小写不敏感. 解决方案一: 于是怀疑Mysql的问题.做个实验:直接使用客户端用sql查 ...

  5. T25990 [Wind Festival]Running In The Sky

    T25990 [Wind Festival]Running In The Sky 题目背景 [Night - 20:02[Night−20:02 P.M.]P.M.] 夜空真美啊--但是--快要结束了 ...

  6. Java 8 Stream 用法

    一.Stream是什么 Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 Iterator.原始版本的 Iterator,用户只能显式地一个一个遍历元 ...

  7. 洛谷 U3357 C2-走楼梯

    https://www.luogu.org/problem/show?pid=U3357 题目背景 在你成功地解决了上一个问题之后,方方方不禁有些气恼,于是他在楼梯上跳来跳去,想要你求出他跳的方案数. ...

  8. 边双连通缩点+树dp 2015 ACM Arabella Collegiate Programming Contest的Gym - 100676H

    http://codeforces.com/gym/100676/attachments 题目大意: 有n个城市,有m条路,每条路都有边长,如果某几个城市的路能组成一个环,那么在环中的这些城市就有传送 ...

  9. 修复 Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:build-helper-maven-plugin:1.8:add-source (execution: add-source, phase: generate-sources)

    在maven项目中使用add-source时,pom.xml报如下错误: Plugin execution not covered by lifecycle configuration: org.co ...

  10. VS调试程序快捷键和系统快捷键

    调试程序快捷键 编译程序:F7 运行程序:ctrl + F5 打断点:F9 运行到断点位置:F5 单步执行:F10 单步进入函数:F11 结束调试:shift+F5 注释代码:ctrl+k,ctrl+ ...