Найти в Дзене
Журнал разработчика

Запись 22. Коллекции. Проверка наличия элемента

Коллекциями в Python называют списки, словари и множества. Все они хранят набор значений одного или различных типов. Кстати, к коллекциям также относятся кортежи и строки. Давайте немного обобщим информацию о коллекциях.

Обобщение проведём с помощью таблицы, которую я взял здесь. Кстати, по ссылке находится статья в 4 частях, в которой очень подробно рассмотрены все аспекты коллекций в Python. Но не буду углубляться. Рассмотрим таблицу.

Коротко о терминах:

  • изменяемость – возможность добавлять и удалять элементы после создания коллекции
  • индексированность – наличие индекса (порядкового номера) у каждого элемента коллекции, позволяет брать срезы
  • уникальность – каждый элемент коллекции уникален

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

А теперь разберёмся с проверкой вхождения элемента в коллекцию.

Для этого нам потребуется условие и оператор in.

Допустим у нас есть список пользователей (users), в который надо добавить нового пользователя (new_user), но его имя должно быть уникальным. Значит перед добавлением его в список необходимо проверить наличие такого имени в списке.

Метод append() добавляет элемент в конец списка
Метод append() добавляет элемент в конец списка

Результат будет таким:

-3

А теперь попробуем добавить пользователя, который уже присутствует в списке:

-4
-5

Можно написать условие иначе, проверить отсутствие элемента в списке. Для этого воспользуемся логическим оператором not.

-6
-7

Использование in в словарях имеет некоторую особенность, т.к. проверяет только ключи.

На этом пока остановлюсь. Если появились вопросы, задавайте в комментариях, будем разбираться.

Наука
7 млн интересуются