держит женские имена, начинающиеся с буквы «Х».
Рис. 3.1. Распространенные операции с множествами
92
Глава 3. Наполнение Python: списки, кортежи, словари и множества
Создание множества с помощью функции set()
Чтобы создать множество, вам следует использовать функцию set() или разме-
стить в фигурных скобках одно или несколько разделенных запятыми значений,
как показано здесь:
>>> empty_set = set()
>>> empty_set
set()
>>> even_numbers = {0, 2, 4, 6, 8}
>>> even_numbers
{0, 8, 2, 4, 6}
>>> odd_numbers = {1, 3, 5, 7, 9}
>>> odd_numbers
{9, 3, 1, 5, 7}
Как и в случае со словарем, порядок ключей в множестве не имеет значения.
Поскольку пустые квадратные скобки [] создают пустой список, вы могли бы рассчитывать
на то, что пустые фигурные скобки {} создают пустое множество. Вместо этого пустые фи-
гурные скобки создают пустой словарь. Именно поэтому интерпретатор выводит пустое
множество как set() вместо {}. Почему так происходит? Словари появились в Python раньше
и успели захватить фигурные скобки в свое распоряжение.
Преобразование других типов данных
с помощью функции set()
Вы можете создать множество из списка, строки, кортежа или словаря, потеряв все
повторяющиеся значения.
Для начала взглянем на строку, которая содержит более чем одно включение
некоторых букв:
>>> set('letters')
{'l', 'e', 't', 'r', 's'}
Обратите внимание на то, что множество содержит только одно включение
букв «e» или «t», несмотря на то, что в слове letters по два включения каждой из
них.
Создадим множество из списка:
>>> set(['Dasher', 'Dancer', 'Prancer', 'Mason-Dixon'])
{'Dancer', 'Dasher', 'Prancer', 'Mason-Dixon'}
А теперь из кортежа:
>>> set(('Ummagumma', 'Echoes', 'Atom Heart Mother'))
{'Ummagumma', 'Atom Heart Mother', 'Echoes'}
Множества
93
Когда вы передаете функции set() словарь, она возвращает только ключи:
>>> set({'apple': 'red', 'orange': 'orange', 'cherry': 'red'})
{'apple', 'cherry', 'orange'}
Проверяем на наличие значения
с помощью ключевого слова in
Такое использование множеств самое распространенное. Мы создадим словарь,
который называется drinks. Каждый ключ будет названием коктейля, а соот-