Как я могу подсчитать количество элементов в массиве, потому что вопреки логике array.count(string) не учитывает все элементы в массиве, он просто ищет количество вхождений строки.
Подсчет элементов массива в Python
Ответ 1
Метод len() возвращает количество элементов в списке.
Синтаксис:
len(myArray)
Например:
myArray = [1, 2, 3]
len(myArray)
Вывод:
3
Ответ 2
len
- это встроенная функция, которая вызывает заданную объект-объект-контейнер __len__
для получения количества элементов в объекте.
Функции, заключенные в двойные подчеркивания, обычно являются "специальными методами", реализующими один из стандартных интерфейсов в Python (контейнер, номер и т.д.). Специальные методы используются через синтаксический сахар (создание объектов, индексирование контейнеров и нарезка, доступ к атрибутам, встроенные функции и т.д.).
Использование obj.__len__()
не будет правильным способом использования специального метода, но я не понимаю, почему другие были так сильно модифицированы.
Ответ 3
Если у вас есть многомерный массив, len() может не дать вам искомое значение. Например:
import numpy as np
a = np.arange(10).reshape(2, 5)
print len(a) == 2
Этот блок кода вернет true, сообщая, что размер массива равен 2. Однако в этом двумерном массиве фактически есть 10 элементов. В случае многомерных массивов, len() дает вам длину первого измерения массива, т.е.
import numpy as np
len(a) == np.shape(a)[0]
Чтобы получить количество элементов в многомерном массиве произвольной формы:
import numpy as np
size = 1
for dim in np.shape(a): size *= dim
Ответ 4
Или
myArray.__len__()
если вы хотите быть умным; "len (myArray)" намного легче набрать!:)
Ответ 5
Прежде чем я увидел это, я подумал про себя: "Мне нужно сделать способ сделать это!"
for tempVar in arrayName: tempVar+=1
И тогда я подумал: "Должен быть более простой способ сделать это". и я был прав.
len(arrayName)