set (множество)
iterable — Объект, поддерживающий итерирование, элементы которого должны стать элементами множества. Если не указан, будет создано пустое множество.
my_set = set()
my_set # set()
my_set = set([1, 2, 3, -10, 40])
my_set #
Множества могут быть созданы литералом при помощи фигурных скобок < , >с указанием элементов в них:
my_set =
my_set #
# При помощи составления множества.
my_set =
type(my_set) # set
Помните, что конструкция <> создаст не пустое множество, а пустой словарь. Пустое множество создаётся при помощи set() (см. выше).
Класс создает множество или преобразовывает последовательность в множество
Класс set() создает или преобразует переданный объект iterable , поддерживающий итерирование, в новое множество set . Если аргумент iterable не указан, будет создано пустое множество.
Для создания вложенных множеств, требуется чтобы внутренние множества были НЕ изменяемыми.
Примеры преобразования последовательностей в множество.
print(set()) # set() x = set([1, 2, 3, 4, 5, 6, 7, 5, 7, 8, -9]) print(x) #
Преобразовать строку str в множество:
x = 'кукарача' print(set(x)) #
Преобразовать кортеж tuple в множество:
x = ('apple', 'banana', 'cherry') print(set(x)) #
Преобразовать список list в множество:
x = ['apple', 'banana', 'cherry'] print(set(x)) #
При преобразовании словаря dict в множество попадают только ключи.
x = dict(apple='green', banana='yellow', cherry='red') print(set(x)) #
Преобразовать диапазон range в множество:
x = range(10) print(set(x)) #
- ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
- Функция abs(), абсолютное значение числа
- Функция all(), все элементы True
- Функция any(), хотя бы один элемент True
- Функция ascii(), преобразует строку в ASCII
- Функция bin(), число в двоичную строку
- Класс bool(), логическое значение объекта
- Функция breakpoint(), отладчик кода
- Класс bytearray(), преобразует в массив байтов
- Класс bytes(), преобразует в строку байтов
- Функция callable(), проверяет можно ли вызвать объект
- Функция chr(), число в символ Юникода
- Класс classmethod, делает функцию методом класса
- Функция compile() компилирует блок кода Python
- Класс complex(), преобразует в комплексное число
- Функция delattr(), удаляет атрибут объекта
- Класс dict() создает словарь
- Функция dir(), все атрибуты объекта
- Функция divmod(), делит числа с остатком
- Функция enumerate(), счетчик элементов последовательности
- Функция eval(), выполняет строку-выражение с кодом
- Функция exec(), выполняет блок кода
- Функция filter(), фильтрует список по условию
- Класс float(), преобразует в вещественное число
- Функция format(), форматирует значение переменной
- Класс frozenset(), преобразует в неизменяемое множество
- Функция getattr(), значение атрибута по имени
- Функция globals(), переменные глобальной области
- Функция hasattr(), наличие атрибута объекта
- Функция hash(), хэш-значение объекта
- Функция help(), справка по любому объекту
- Функция hex(), число в шестнадцатеричную строку
- Функция id(), идентификатор объекта
- Функция input(), ввод данных с клавиатуры
- Класс int(), преобразует в тип int
- Функция isinstance(), принадлежность экземпляра к классу
- Функция issubclass(), проверяет наследование класса
- Функция iter(), создает итератор
- Функция len(), количество элементов объекта
- Класс list(), преобразовывает в список
- Функция locals(), переменные локальной области
- Функция map(), обработка последовательности без цикла
- Функция max(), максимальное значение элемента
- Класс memoryview(), ссылка на буфер обмена
- Функция min(), минимальное значение элемента
- Функция next(), следующий элемент итератора
- Класс object(), возвращает безликий объект
- Функция oct(), число в восьмеричную строку
- Функция open(), открывает файл на чтение/запись
- Функция ord(), число символа Unicode
- Функция pow(), возводит число в степень
- Функция print(), печатает объект
- Класс property(), метод класса как свойство
- Класс range(), генерирует арифметические последовательности
- Функция repr(), описание объекта
- Функция reversed(), разворачивает последовательность
- Функция round(), округляет число
- Класс set(), создает или преобразовывает в множество
- Функция setattr(), создает атрибут объекта
- Класс slice(), шаблон среза
- Функция sorted(), выполняет сортировку
- Декоратор staticmethod(), метод класса в статический метод
- Класс str(), преобразует объект в строку
- Функция sum(), сумма последовательности
- Функция super(), доступ к унаследованным методам
- Класс tuple(), создает или преобразует в кортеж
- Класс type(), возвращает тип объекта
- Функция vars(), словарь переменных объекта
- Функция zip(), объединить элементы в список кортежей
- Функция __import__(), находит и импортирует модуль
- Функция aiter(), создает асинхронный итератор
- Функция anext(), следующий элемент асинхронного итератора
Что делает set в python
Множество в языке Питон — это структура данных, эквивалентная множествам в математике. Множество может состоять из различных элементов, порядок элементов в множестве неопределен. В множество можно добавлять и удалять элементы, можно перебирать элементы множества, можно выполнять операции над множествами (объединение, пересечение, разность). Можно проверять принадлежность элемента множеству.
В отличие от массивов, где элементы хранятся в виде последовательного списка, в множествах порядок хранения элементов неопределен (более того, элементы множества хранятся не подряд, как в списке, а при помощи хитрых алгоритмов). Это позволяет выполнять операции типа “проверить принадлежность элемента множеству” быстрее, чем просто перебирая все элементы множества.
Элементами множества может быть любой неизменяемый тип данных: числа, строки, кортежи. Изменяемые типы данных не могут быть элементами множества, в частности, нельзя сделать элементом множества список (но можно сделать кортеж) или другое множество. Требование неизменяемости элементов множества накладывается особенностями представления множества в памяти компьютера.
Задание множеств
Множество задается перечислением всех его элементов в фигурных скобках. Исключением явлеется пустое множество, которое можно создать при помощи функции set() . Если функции set передать в качестве параметра список, строку или кортеж, то она вернёт множество, составленное из элементов списка, строки, кортежа. Например:
A = A = set('qwerty') print(A)
Каждый элемент может входить в множество только один раз, порядок задания элементов неважен. Например, программа:
A = B = print(A == B)
выведет True , так как A и B — равные множества.
Каждый элемент может входить в множество только один раз. set(‘Hello’) вернет множество из четырех элементов: .
Работа с элементами множеств
Узнать число элементов в множестве можно при помощи функции len .
Перебрать все элементы множества (в неопределенном порядке!) можно при помощи цикла for :
primes = for num in primes: print(num)
Проверить, принадлежит ли элемент множеству можно при помощи операции in , возвращающей значение типа bool . Аналогично есть противоположная операция not in . Для добавления элемента в множество есть метод add :
A = print(1 in A, 4 not in A) A.add(4)
Для удаления элемента x из множества есть два метода: discard и remove . Их поведение различается только в случае, когда удаляемый элемент отсутствует в множестве. В этом случае метод discard не делает ничего, а метод remove генерирует исключение KeyError .
Наконец, метод pop удаляет из множества один случайный элемент и возвращает его значение. Если же множество пусто, то генерируется исключение KeyError .
Из множества можно сделать список при помощи функции list .
Что делает функция set в Python?
Функция set() создает из переданной ей коллекции тип данных множество — неупорядоченную коллекцию, в которой нет повторяющихся элементов. Функции можно передать как сам итерируемый объект, так и итератор:
x = set(['apple', 'banana', 'cherry', 'apple']) print(x) # =>
Неупорядоченность множества означает, что элементы в нем расположены в случайном порядке и к ним нельзя обратиться по индексу, как, например, в списках или кортежах.
