Python中shape的用法
shape函数的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度,相当于行数。它的输入参数可以是一个整数表示维度,也可以是一个矩阵。shape函数返回的是一个元组,表示数组(矩阵)的维度,例子如下:
1. 数组(矩阵)只有一个维度时,shape只有shape[0],返回的是该一维数组(矩阵)中元素的个数,通俗点说就是返回列数,因为一维数组只有一行,一维情况中array创建的可以看做list(或一维数组),创建时用()和[ ]都可以,多维就不可以这样子了,这里使用[ ],请看下例:
>>> a=np.array([1,2])>>> aarray([1, 2])>>> a.shape(2L,)>>> a.shape[0]2L>>> a.shape[1]Traceback (most recent call last): File "", line 1, in a.shape[1]IndexError: tuple index out of range #最后报错是因为一维数组只有一个维度,可以用a.shape或a.shape[0]来访问>>> a=np.array((1,2))>>> aarray([1, 2]) #这个使用的是两个()包裹,得到的数组和前面的一样
数组有两个维度(即行和列)时,和我们的逻辑思维一样,a.shape返回的元组表示该数组的行数与列数,请看下例:
>>> a=np.array([[1,2],[3,4]]) #注意二维数组要用()和[]一起包裹起来,键入print a 会得到一个用2个[]包裹的数组(矩阵)>>> aarray([[1, 2], [3, 4]])>>> a.shape(2L, 2L)>>> b=np.array([[1,2,3],[4,5,6]])>>> barray([[1, 2, 3], [4, 5, 6]])>>> b.shape(2L, 3L)
当数组是三维时,要用一个()和两个[]包裹起来,键入print a 会得到一个用3个[]包裹的数组(矩阵),请看下例:
>>> a=np.array([[[1,2],[3,4]]])>>> aarray([[[1, 2], [3, 4]]])>>> a.shape(1L, 2L, 2L)
这里返回的元组表示3个维度各包含的元素的个数。
所谓元素,在一维时就是元素的个数,二维时表示行数和列数,三维时a.shape【0】表示创建的块数,a.shape【1】和a.shape【2】表示每一块(每一块都是二维的)的行数和列数,举个例子:
>>> a=np.ones([2,2,3])#创建两个2行3列的数组(矩阵)>>> aarray([[[ 1., 1., 1.], [ 1., 1., 1.]], [[ 1., 1., 1.], [ 1., 1., 1.]]])
来源地址:https://blog.csdn.net/weixin_56594364/article/details/129292134
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341