Длина или Размер Списка в Python: 5 Способов Узнать Длину Списка

В этом руководстве вы узнаете, как использовать Python для получения длины списка (или, точнее, его размера). Умение работать со списками - важный навык для любого, кто использует Python. Умение определять длину списка Python особенно полезно. Вы научитесь получать длину списка Python с помощью встроенной функции len(), наивной реализации метода с использованием цикла for, как проверять, пустой список или нет, и как определять длину списков списков.

Оглавление

Длина списка Python с использованием функции len()

Самый простой (и самый идиоматичный в Python) способ получить длину или размер списка - использовать встроенную функцию len(). Функция принимает итерируемый объект в качестве единственного параметра и возвращает его длину.

Посмотрим, насколько это просто:

# Получаем длину списка Python
a_list = [1,2,3,'bemind!']
print(len(a_list))

# Возвращает: 4

Мы видим, что с помощью функции len() легко получить длину списка Python.

Длина списка Python с использованием цикла for

Хотя этот подход не рекомендуется (обязательно используйте метод выше!), этот метод с циклом for позволяет понять алгоритм подсчета элементов в итерируемом объекте.

Для этого мы перебираем каждый элемент списка и увеличиваем счетчик. Посмотрим, как это можно сделать в Python:

# Получаем длину списка Python
a_list = [1,2,3,'bemind!']

length = 0
for _ in a_list:
    length += 1

print(length)

# Возвращает 4

Этот подход, конечно, не такой прямой, как использование встроенной функции len(), но он объясняет некоторые алгоритмические подходы к подсчету элементов в Python.

Проверка, является ли список Python пустым или нет

В своем программировании вы часто будете сталкиваться с ситуациями, когда нужно определить, пуст список Python или нет.

Теперь, когда вы знаете, как получить длину списка Python, вы можете просто оценить, равна ли длина списка нулю или нет:

# Как проверить, пуст ли список Python

a_list = []

if len(a_list) != 0:
    print("Не пустой!")
else:
    print("Пустой!")

# Возвращает: Пустой!

Но Python делает проверку наличия элементов в списке еще проще. Поскольку значение 0 фактически вычисляется как False, а любое другое значение - как True, мы можем просто написать следующее:

# Более простой способ проверки, пуст ли список
a_list = []

if a_list:
    print("Не пустой!")
else:
    print("Пустой!")

# Возвращает: Пустой!

Это гораздо чище с точки зрения написания и чтения кода.

Получение длины списков списков

Работа со списками списков немного усложняет получение их длины.

Чтобы лучше объяснить это, рассмотрим непосредственный пример:

# Получаем длину списка списков
a_list_of_lists = [[1,2,3], [4,5,6], [7,8,9]]

print(len(a_list_of_lists))

# Возвращает: 3

Мы видим, что код (корректно) возвращает 3. Но что, если мы хотим получить длину всех элементов во внешнем списке?

Чтобы это сделать, мы можем суммировать длины каждого отдельного списка с помощью списочного включения Python и функции sum.

Посмотрим, как это можно сделать:

# Получаем длину списка списков
a_list_of_lists = [[1,2,3], [4,5,6], [7,8,9]]

length = sum([len(sub_list) for sub_list in a_list_of_lists])
print(length)
# Возвращает: 9

Получение длины каждого списка в списке списков

В предыдущем примере вы узнали, как получить длину всех элементов в списке списков. В этом разделе вы узнаете, как вернуть список, содержащий длины каждого подсписка в списке списков.

Мы можем сделать это снова с помощью списочного включения Python. Мы будем перебирать каждый подсписок и определять его длину. Опытный глаз заметит, что это тот же метод, который мы применяли ранее, просто без префикса функции sum().

Посмотрим, как это сделать:

# Получаем длину каждого подсписка в списке списков
a_list_of_lists = [[1,2,3], [4,5,6], [7,8,9]]

lengths = [len(sublist) for sublist in a_list_of_lists]
print(lengths)

# Возвращает [3, 3, 3]

Заключение

В этой статье вы научились использовать Python для вычисления длины списка. Вы также узнали, как проверить, пуст список Python или нет. Наконец, вы научились вычислять длину списка списков, а также вычислять длину каждого списка, содержащегося в списке списков.

Чтобы узнать больше о функции len() в Python, ознакомьтесь с официальной документацией.

Last updated