Python: Проверка наличия элемента в списке

В этом учебнике вы узнаете, как использовать Python для проверки наличия элемента в списке. Другими словами, вы узнаете, существует ли элемент в списке Python. Умение определять, содержит ли список Python конкретный элемент, является важным навыком при составлении условных выражений. Например, если вы разрабатываете веб-приложение, вам может понадобиться проверить, выбрал ли пользователь уже несколько значений. Или, если вы разрабатываете игру, вы можете захотеть увидеть, есть ли у пользователя разные предметы в его инвентаре.

К завершению наличия этого управления вы научитесь проверять элемент в списке. Вы узнаете, как это сделать с помощью ключевого слова в списке, а также как проверить наличие элемента в списке с помощью ключевых слов, которых нет в списке. Вы также узнаете, как проверить основу элемента в списке с использованием функции any(), а также функции count( ). Наконец, вы изучите некоторые простые реализации проверки членства в списке, такие как цикл для и списковые включения.

Оглавление

Проверьте, содержит ли список Python элемент, используя in

Один из самых простых и "питонических" способов проверить наличие элемента в списке Python - использовать ключевое слово in. Технически, ключевое слово in выполняет две функции:

  1. Проверить наличие в списке

  2. Перебрать элементы в цикле for

В этом случае мы используем ключевое слово in, чтобы проверить, существует ли элемент в списке. Это обеспечивает читаемый и почти на естественном языке способ проверки принадлежности. Давайте посмотрим, как это выглядит:

# Проверка наличия элемента в списке Python
items = ['bemind.gitbook.io', 'apples', 'bananas']

if 'bemind.gitbook.io' in items:
    print('Элемент существует!')

# Возвращает: Элемент существует!

Мы можем это сделать, написав if 'item' in items, что позволяет оценить существование элемента в нашем списке. Это действительно интуитивный способ проверить существование элементов.

В следующем разделе вы узнаете, как использовать Python для проверки отсутствия элемента.

Проверьте, не содержит ли список Python элемент, используя not in

В этом разделе вы научитесь проверять, не содержит ли список элемент. Мы можем сделать это, отрицая ключевое слово in с помощью ключевого слова not. Подобно предыдущему примеру, это читается как относительно простой английский. Давайте посмотрим, как мы можем использовать ключевое слово not in, чтобы проверить, что элемент отсутствует в списке:

# Проверка отсутствия элемента в списке Python
items = ['bemind.gitbook.io', 'apples', 'bananas']

if 'oranges' not in items:
    print("Элемент отсутствует!")

# Возвращает: Элемент отсутствует!

Мы видим, что ключевое слово not in позволяет определить, существует ли элемент. Оно возвращает противоположное значение истинности ключевого слова in. Благодаря этому мы можем писать более чистый код.

В следующем разделе вы узнаете, как проверять наличие элемента в списке Python с помощью метода .count().

Проверьте, содержит ли список Python элемент, используя счетчик

Списки Python имеют множество полезных методов. Одним из таких методов является метод .count(), который считает, сколько раз элемент появляется в списке. Таким образом, можно проверить, существует ли элемент в списке, если количество этого элемента больше 0. Если счет равен 0, то элемента в списке нет.

Давайте посмотрим, как это выглядит:

# Проверка наличия элемента в списке Python с использованием метода .count()
items = ['bemind.gitbook.io', 'apples', 'bananas']

if items.count('bemind.gitbook.io') > 0:
    print('Элемент существует!')

# Возвращает: Элемент существует!

Если элемент существует, его количество всегда будет больше 0. Если элемента нет, количество будет всегда равно 0.

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

# Проверка наличия элемента в списке Python с использованием метода .count()
items = ['bemind.gitbook.io', 'apples', 'bananas']

print('Существует') if items.count('bemind.gitbook.io') else print("Не существует")

# Возвращает: Существует

Выражение здесь работает как тернарный оператор в Python. Если вы хотите узнать больше о том, как работает тернарный оператор в Python, изучите мое подробное руководство по тернарному оператору здесь.

В следующем разделе вы узнаете, как использовать функцию any() для проверки на принадлежность к списку в Python.

Проверьте, содержит ли список Python элемент, используя любой

Функция any в Python сканирует итерируемый объект и возвращает True, если любой из его элементов является True. Как использовать функцию any для проверки принадлежности в списке Python? **Мы можем поместить выражение внутри функции any для проверки принадлежности. Если любой элемент будет возвращён, функция any вернёт True.

Давайте посмотрим, как это выглядит, а затем разберемся, как это работает:

# Проверка наличия элемента в списке Python с использованием функции any()
items = ['bemind.gitbook.io', 'apples', 'bananas']

print(any(item == 'bemind.gitbook.io' for item in items))

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

Этот процесс заключается в том, что генератор будет перебирать каждый элемент списка и проверять, равен ли он проверяемому элементу. Если да, генератор возвращает True для этого элемента. В противном случае, вернется значение False. Благодаря этому, если существует значение True, функция any вернет True.

В следующем разделе вы узнаете, как использовать цикл for для проверки существования элемента в списке.

Проверьте, содержит ли список Python элемент, используя цикл for

В этом заключительном разделе вы узнаете, как использовать цикл for для проверки принадлежности элемента списку. Мы можем поочередно просматривать каждый элемент списка и проверять, соответствует ли он искомому значению. Как только элемент будет найден, цикл for установит значение True, и выполнение цикла будет прервано.

Давайте посмотрим, как это выглядит на языке Python:

# Проверка наличия элемента в списке Python с использованием цикла for
items = ['bemind.gitbook.io', 'apples', 'bananas']
exists = False
for item in items:
    if item == 'bemind.gitbook.io':
        exists = True
        break

print(exists)

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

Давайте разберемся, что мы здесь сделали:

  1. Мы создали наш список и переменную exists, которая по умолчанию установлена в False

  2. Мы проходим по каждому элементу списка и проверяем, равен ли он значению, которое мы хотим проверить на принадлежность.

  3. Если элемент равен тому, который мы хотим проверить, то мы устанавливаем exists в True и выходим из цикла for

Заключение

В этом уроке вы узнали, как проверять наличие элемента в списке Python, а именно, проверять, существует ли элемент. Вы узнали, как сделать это с помощью ключевого слова in. Затем вы узнали, как проверить, отсутствует ли элемент, используя ключевое слово not in. Далее вы узнали другие методы проверки наличия элемента, используя функцию any, метод .count и цикл for в Python.

Чтобы узнать больше о ключевом слове Python in, ознакомьтесь с официальной документацией здесь. Официальная документация для any функции находится здесь, а для метода .count, она находится здесь

Last updated