
Python 没有内置的数组数据类型。但是你可以使用第三方库如 Numpy 创建一个数组。首先要明确,在Python 中,你所说的数组 可能是指一个列表。然后,为了找到列表的大小,使用len()方法。
Python 数组长度
要在Python中找到一个数组的长度,使用len()方法。len()是一个内置的Python方法,它接受一个数组作为参数,并返回数组中元素的数量。len()函数返回一个数组的大小。
size = len(arr)
len()方法需要一个必要的参数,一个数组,或者一个列表。
# app.py
numbers = [11, 21, 19, 18, 46]
print("The size of an array is: ", len(numbers))
输出
The size of an array is: 5
一个数组的大小总是比数组的最高索引多一个。例如,数组最后一个元素的索引是4;数组的大小是5。 总是+1的最后一个元素的索引。
len()函数在幕后所做的是,它正在调用列表 __len__() ,而 len() 所做的是它拿着对象,试图调用对象的 __len__() 方法。
简而言之,len() 函数只对具有 __len__() 方法的对象起作用。如果你有一个带有 __len__() 方法的自定义对象,你甚至可以调用 len() 。
数组的Python大小
要找到一个数组 的 大小,可以使用numpy size 属性。numpy数组有size和shape属性,但是size和shape属性并不完全相同。size是一个内置的属性,返回数组的大小。
# app.py
import numpy as np
arr = np.array([[1, 2], [3, 4], [5, 6]])
print("The size of a numpy array is: ", arr.size)
输出
The size of a numpy array is: 6
在上面的代码中,我们通过numpy.size属性得到数组中的元素数。size属性对一维数组非常有效。它不考虑多维数组,它只给我们数组中元素的数量。
shape是一个内置属性,它返回数组的形状。它计算数组中元素的数量,然后返回。
# app.py
import numpy as np
arr = np.array([[1, 2], [3, 4], [5, 6]])
print("The shape of a numpy array is: ", arr.shape)
输出
The shape of an numpy array is: (3, 2)
它返回数组的形状。
numpy数组长度
要在Python中找到 numpy 数组的长度 ,使用ndarray.size 属性。np.ndarray.size属性返回数组中的几个元素。numpy.shape属性返回一个形式为(a, b)的元组,其中a是数组中的行数,b是数组中的列数。
# app.py
import numpy as np
np_arr = np.arange(3)
print(np_arr)
print(np_arr.shape)
输出
[0 1 2]
(3,)
numpy.ndarray的形状(=每个维度的长度)可以被接受为一个带有shape属性的元组。
在我们的例子中,数组是一个一维数组,这就是为什么它返回一个有一个元素的元组而不是一个整数值。
二维数组的Numpy大小
要在Pythonnumpy中获得 一个二维 数组的长度,可以使用array.size属性。array.size属性返回数组中元素的数量。
# app.py
import numpy as np
np_arr = np.array([[11, 21], [31, 41]])
print(np_arr)
print(np_arr.shape)
输出
[[11 21]
[31 41]]
(2, 2)
你可以看到,它等同于 np.prod(a.shape),也就是数组尺寸的乘积。
总结
与其他编程语言如JavaScript或PHP不同,Python不支持正常的 "length()"或 "size()"函数来获取一个数组的大小。例如,不使用 "array.length()",而使用**len()**函数,它把数组本身作为一个参数,并返回其大小。
这篇文章就讲到这里。