千锋教育-做有情怀、有良心、有品质的职业教育机构

python np.nonzero()函数

来源:千锋教育
发布时间:2023-11-07 08:25:40
分享

nonzero函数是numpy中用于得到数组array中非零元素的目录(位置)的函数。

返回值为元组,两个值分别为两个维度,包含了相应维度上非零元素的目录值。

只有a中非零元素才会有索引值,那些零值元素没有索引值

当使用布尔数组直接作为下标对象或者元祖下标对象中有布尔数组时,都相当于用nonzero()讲布尔数组转换成一组整数数组,然后使用整数数组进行下标运算。

nonzeros(a)返回数组a中值不为零的元素的下标,它的返回值是一个长度为a.ndim(数组a的轴数)的元组,元组的每个元素都是一个整数数组,其值为非零元素的下标在对应轴上的值。例如对于一维布尔数组b1,nonzero(b1)所得到的是一个长度为1的元组,它表示b1[0]和b1[2]的值不为0(False)。

b=np.array([True,False,True,False])

b

array([True,False,True,False])

np.nonzero(b)

(array([0,2],dtype=int64),)

对于一个二维数组c,nonzeero(c)所得到的是一个长度为2的元祖,它的第0个元素是数组a中值不为0的元素的第0轴的下标,第一个元素则为第1轴的下标,因此从下面的结果可知b2[0,0]、b[0,2]和b2[1,0]的值不为0:

o=np.array([[True,False,True],[True,False,False]])

c

array([[True,False,True],

[True,False,False]])

np.nonzero(c)

(array([0,0,1],dtype=int64),array([0,2,0],dtype=int64))

以上内容为大家介绍了pythonnp.nonzero()函数,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • 关于 Python 配置文件的使用方法 很多项目对配置文件的使用做法是:配置文件写在一个或多个python文件中,比如此处的conf.py。项目中哪个模块用到这个配置文件就直接通过importconf这种形式来在代码中使用配置。这种做法我不
  • Python之什么是面向对象? OOP(ObjectOrientedPrograming)编程是利用“类”和“对象”来创建各种模型来实现对真实世界的描述。怎么说呢?核心是“对象”二字,要理解对象为何物,必须把自己当成上帝,在上帝眼里
  • Python 面向过程 python面向过程优点:复杂的问题流程化,进而简单化(一个复杂的问题,分成一个个小的步骤去实现,实现小的步骤将会非常简单)举个典型的面向过程的例子,写一个数据远程备份程序,分三步,本地数据打包,上传
  • Python绑定方法与非绑定方法 python类中定义的函数分为两大类1:绑定方法(绑定给谁,谁来调用就自动将它本身当作第一个参数传入):绑定方法分为绑定到类的方法和绑定到对象的方法,具体如下:1.绑定到类的方法:用classmeth
  • Python 类方法,静态方法的定义 python是双面向的,既可以面向函数编程,也可以面向对象编程,所谓面向函数就是单独一个.py文件,里面没有类,全是一些函数,调用的时候导入模块,通过模块名.函数名()即可调用,完全不需要类,那么你可
  • Python 类方法与静态方法说明 1:self表示为类型为类的object,而cls表示为类也就是class2:在定义普通方法的时候,需要的是参数self,也就是把类的实例作为参数传递给方法,如果不写self的时候,会发现报错Type