Как объявить множество в python

Множества в Python

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

Содержание страницы:
1.1. Создание множества на Python
1.2. Создание множеств встроенной функцией set
1.3. Определение длины множества
2.1. Проверка наличия элемента в множестве
2.2. Перебор элементов множества
3.1. Сравнение множеств
3.2. Математические операции с множествами
3.3. Математические операции с изменяемыми множествами
4. Добавление и удаление элементов
5. Трансформация множеств

1.1. Создание множества на Python

Создание множества (set) происходит с помощью фигурных скобок <> так же, как и словарей, но элементы разделены просто запятыми, без пар «ключ : значение». В отличие от словарей и списков, множества не хранятся в каком-либо определенном порядке.

Повторяющаяся строка ‘red’ была удалена при выводе. Одно из самых важных областей применения множеств — это удаление дубликатов, которое выполняется автоматически. Значения выводятся не в порядке их перечисления, множества неупорядочены.

1.2. Создание множеств встроенной функцией set

Множества можно создавать на базе других коллекций, используя встроенную функцию set() . В примере ниже создается множество на базе списка.

Читайте также:  Авторизация на сайте

>>> cars = [‘bmw’, ‘audi’, ‘mersedes’, ‘bmw’, ‘ford’]
>>> set(cars)

Если вам нужно создать пустое множество, то нужно использовать функцию set() с пустыми круглыми скобками, вместо фигурных.

1.3. Определение длины множества

Количество элементов определяется при помощи встроенной функции len.

2.1. Проверка наличия элемента в множестве

Для проверки содержания элемента в множестве можно воспользоваться операторами in или not in .

>>> cars =
>>> ‘audi’ in cars
True
>>> ‘audi’ not in cars
False

2.2. Перебор элементов множества

Для перебора элементов можно воспользоваться циклом for .

Так как множества не упорядочены, порядок перебора не имеет значения.

3.1. Сравнение множеств.

Для сравнения множеств в Python можно использовать различные операторы и методы:

>>> ==
True
>>> !=
False

  • Оператор > проверяет что все элементы правого операнда присутствуют в левом и левый операнд содержит больше элементов:

>>> >
False
>>> >
True

  • Оператор >= проверяет что все элементы правого операнда присутствуют в левом и эти множества могут быть равны. Так же для проверки можно воспользоваться методом issuperset :

>>> >=
True
>>> .issuperset( )
True
>>> >=
True
>>> .issuperset( )
True

3.2. Математические операции с множествами Python

Объединение множеств

Объединение двух множеств называется множество, состоящее из всех уникальный элементов обоих множеств. Для объединения множеств можно воспользоваться оператором | или методом union .

Пересечение множеств

При пересечении двух множеств, получается множество, состоящее из всех уникальных элементов, входящих в оба множества. Пересечение можно вычислить оператором & или методом intersection .

Разность множеств

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

Симметрическая разность множеств

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

Читайте также:  Html how to send post

Непересекающиеся множества

Непересекающимися множествами называются множества, если они оба не содержат общих элементов. Проверка выполняется методом isdisjoint .

3.3. Математические операции с изменяемыми множествами

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

  • Расширенное присваивание с объединением |= выполняет операцию объединения множеств, как и оператор | , но |= изменяет свой левый операнд. Также вы можете воспользоваться методом update .

>>> numbers =
>>> numbers |=
>>> numbers

  • Расширенное присваивание с пересечением &= или intersection_update
  • Расширенное присваивание с разностью -= или difference_update
  • Расширенное присваивание с симметрической разностью ^= или symmetric_difference_update

4. Добавление и удаление элементов

метод add()

Метод add множества добавляет свой аргумент, если он еще не входит в множество, в противном случае множество остается без изменения.

>>> numbers =
>>> numbers .add( 5 )
>>> numbers

>>> numbers .add( 4 )
>>> numbers

метод remove()

Метод remove() множества удаляет свой аргумент из множества. Если значение отсутствует, то происходит ошибка KeyError:

>>> numbers =
>>> numbers .remove( 4 )
>>> numbers

метод discard()

Метод discard множества также удаляет аргумент, но в случае его отсутствия ошибка не происходит

>>> numbers =
>>> numbers .discard( 2 )
>>> numbers

метод pop()

Метод pop() множества удаляет элемент и возвращает его:

метод clear()

Метод clear() очищает множество:

>>> numbers =
>>> numbers .clear()
>>> numbers
set()

5. Трансформация множеств на Python

Трансформация множеств определяется в фигурных скобках <>. Создадим множество из списка, которое содержит только четные значения:

Источник

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