Как проверить наличие элемента в наборе Python

Существуют следующие методы проверки наличия элемента в наборе в Python.

Способ 1: использование оператора «in»

Чтобы проверить, содержит ли Set элемент в Python, вы можете использовать оператор «in», который возвращает True, если указанный Set содержит элемент, и False в противном случае. Оператор «in» проверяет, находится ли элемент в последовательности, такой как список, диапазон, строка или набор.

Выход

Он возвращает True, потому что 19 включено в Set.

Проверьте наличие элемента 46 в существующем наборе и посмотрите результат.

Выход

Мы получили False, потому что Set не содержит элемент «46».

Способ 2: использование оператора «not in»

Оператор «not in» в Python работает противоположно оператору in. Оператор «not in» проверяет наличие заданного значения внутри заданной последовательности, но его возвращаемые значения противоположны значениям оператора «in».

Выход

Он возвращает True, потому что Set не содержит 46. Поэтому оператор not in возвращает True, потому что его нет в Set. Давайте возьмем пример, когда элемент существует в наборе, и посмотрим на результат.

Выход

И он возвращает False, что правильно, поскольку в наборе существует 11.

Способ 3: применение функции Counter()

Counter — это метод подкласса dict и модуля коллекций, используемый для подсчета вхождений элементов в итерируемом объекте. Он может помочь подсчитать элементы, особенно если у вас много элементов, которые либо повторяются, либо уникальны.

Выход

Во-первых, мы объявили множество из пяти элементов. Используя функцию Counter(), мы преобразовали набор в словарь и проверили, существуют ли ключи словаря, используя метод dict.keys().

Таким образом, мы можем проверить, существует ли элемент множества, не используя какой-либо встроенный оператор. Сложность времени равна O(N), а сложность вспомогательного пространства равна O(N).

Заключение

Лучший и наиболее эффективный способ проверить, содержит ли множество элемент, — использовать оператор «in» в Python.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python