Рубрики
Без рубрики

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

В этом уроке мы рассмотрим примеры того, как проверить, пуст ли список в Python. Мы будем использовать функцию len (), рекомендуемый стиль Pep8, а также функцию bool ().

Автор оригинала: Guest Contributor.

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

Вступление

Списки-это одна из четырех наиболее часто используемых структур данных, предоставляемых Python. Его функциональность, расширяемость и простота использования делают его полезным для реализации различных типов функциональных возможностей.

Списки Python имеют несколько интересных характеристик:

  1. Изменчивость – означает, что он может изменяться, что означает, что он позволяет нам легко добавлять и удалять записи из него. Это основное различие между списками Python и кортежами
  2. Итерабельность – что означает, что мы можем итерировать через него (пройти через все элементы в списке по порядку)

Основным атрибутом, на котором будет сосредоточено внимание, является Итеративность . Важной частью при работе с итеративным объектом, в данном случае списком, является проверка того, есть ли что-то для итерации. Если не обращаться с ними должным образом, это может привести к большому количеству нежелательных ошибок.

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

  • Использование функции len()
  • Использование len() С Оператором сравнения
  • Сравнение с пустым списком
  • Pep-8 Рекомендуемый стиль (Самый популярный и рекомендуемый)
  • Использование функции bool()

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

Один из методов состоит в том, чтобы использовать функцию len () , чтобы проверить, пуст ли наш список или нет:

py_list = []

"""
Here len() returns 0, which is 
implicitly converted to false
"""

if len(py_list):
	print('The list is not empty')
else:
	print('T list is empty')

Выход

List is empty

Когда len(py_list) выполняется, он производит ноль, который затем неявно приводится к логическому значению False . Таким образом, в случае пустого списка программа будет перенаправлена в блок else.

Хотя этот метод выглядит простым, он не настолько интуитивно понятен для начинающих.

Использование len() С Оператором Сравнения

Эта техника похожа на описанную выше, но она более ясна и понятна. Вот почему те, кто новичок в python или самом кодировании, обычно считают его более интуитивным:

if len(py_list) == 0:
	print('List is empty')
else:
	print('List not empty')

В приведенном выше коде len(py_list) будет true, если список пуст и будет перенаправлен в блок else. Это также позволяет вам устанавливать и другие значения, а не полагаться на них. 0 преобразуется как False . Все остальные положительные значения преобразуются в Правда .

Сравнение С Пустым Списком

Этот метод также очень прост и хорошо работает для начинающих, так как он включает в себя сравнение с пустым списком:

if py_list == []:
	print('List is empty')
else:
	print('List is not empty')

Здесь мы снова используем операцию сравнения для сравнения одного списка с другим – am empty one, и если оба списка пусты, то будет выполнен блок if .

Рекомендуемый стиль Pep-8

#PEP-8 recommended style

if py_list:
	print('List is not empty')
if not py_list:
	print('List empty')

Для этого давайте взглянем на Тестирование истинностных значений . Официальные документы утверждают, что:

Вот большинство встроенных объектов,которые считаются ложными:

  • константы, определенные как false: None и False.
  • константы, определенные как false: None и False.
  • ноль любого числового типа: 0, 0.0, 0j, Десятичная дробь(0), Дробь(0, 1)

Поскольку пустой список на самом деле является просто пустой коллекцией, он будет преобразован в логическое значение False . Поэтому, если py_list пуст, он будет преобразован в False .

Второе утверждение довольно похоже, за исключением того, что not инвертирует ложное условие в истинное. Этот подход очень похож на if(len(list)) подход.

Это предпочтительный подход, поскольку это самое чистое и короткое решение.

Это предпочтительный подход, поскольку это самое чистое и короткое решение.

Мы также можем использовать функцию bool() для проверки пустоты списка:

#As truth value testing says [] braces denotes false

if bool(py_list):
	print('List is not empty')
else:
	print('List is empty')

Это в основном вручную реализованный тест истинностного значения. Поэтому, если список не пуст, функция вернет True и если блок будет выполнен.

Этот подход менее распространен , так как мы можем достичь желаемых результатов даже без использования bool () , но это не так уж плохо.

Этот подход менее распространен , поскольку мы можем достичь желаемых результатов даже без использования || bool ()||, но неплохо знать, как работает Python под капотом.

Эта статья была посвящена тому, как проверить, пуст ли наш список python или нет. Мы начали с изучения различных техник и, наконец, изучили некоторые параметры, которые мы можем использовать, чтобы сделать наше суждение о том, какая техника может работать для нас.

Я не могу сказать, что это конец, поскольку новые обновления Python могут привести к появлению новых и более совершенных стилей кодирования. Так что лучше продолжать исследовать и продолжать учиться.