在python中计算数组元素

Counting array elements in Python

本问题已经有最佳答案,请猛点这里访问。

我如何计算数组中元素的数量,因为与逻辑数组相反,Count(String)不计算数组中的所有元素,它只搜索字符串的出现次数。


方法len()返回列表中的元素数。

Syntax:

1
len(myArray)

如:

1
2
myArray = [1, 2, 3]
len(myArray)

输出:

1
3


len是一个内置函数,它调用给定容器对象的__len__成员函数来获取对象中的元素数。

用双下划线封装的函数通常是实现Python中一个标准接口(容器、数字等)的"特殊方法"。特殊方法通过句法制糖(对象创建、容器索引和切片、属性访问、内置函数等)使用。

使用obj.__len__()不是使用特殊方法的正确方法,但我不明白为什么其他方法被修改了这么多。


如果您有一个多维数组,len()可能不会给出您要查找的值。例如:

1
2
a = np.arange(10).reshape(2, 5)
print len(a) == 2

此代码块将返回true,告诉您数组的大小为2。然而,实际上这个二维数组中有10个元素。对于多维数组,len()给出了数组第一维的长度,即

1
len(a) == np.shape(a)[0]

要获取任意形状的多维数组中的元素数:

1
2
size = 1
for dim in np.shape(a): size *= dim


或者,

1
myArray.__len__()

如果你想表现得很糟糕,"len(myarray)"更容易输入!:)


在我看到这个之前,我对自己说,"我要想办法做到这一点!"

1
for tempVar in arrayName: tempVar+=1

然后我想,"一定有一个更简单的方法来做这个。"我是对的。

len(arrayName)