Шаг 82.
Основы языка Python.
Списки, кортежи, множества и диапазоны. Методы работы со множествами

    На этом шаге мы перечислим эти методы.

    Для работы с множествами предназначены следующие методы:

    Помимо генераторов списков и генераторов словарей, язык Python 3 поддерживает генераторы множеств. Синтаксис генераторов множеств похож на синтаксис генераторов списков, но выражение заключается в фигурные скобки, а не в квадратные. Так как результатом является множество, все повторяющиеся элементы будут удалены. Пример:

>>> {х for х in [1, 2, 1, 2, 1, 2, 3]}
{1, 2, 3}

    Генераторы множеств могут иметь сложную структуру. Например, состоять из нескольких вложенных циклов for и (или) содержать оператор ветвления if после цикла. Создадим из элементов исходного списка множество, содержащее только уникальные элементы с четными значениями:

>>> {x for x in [1, 2, 1, 2, 1, 2, 3] if x % 2 == 0} 
{2}

    Язык Python поддерживает еще один тип множеств - frozenset. В отличие от типа set, множество типа frozenset нельзя изменить. Объявить множество можно с помощью функции frozenset():

>>> f = frozenset()
>>> f
frozenset()
Функция frozenset() позволяет также преобразовать элементы последовательности во множество:
>>> f = frozenset("string") #  Преобразуем строку
>>> f
frozenset({'n', 's', 'r', 'g', 't', 'i'})
>>> f = frozenset( [1, 2, 3, 4, 4] )  # Преобразуем список
>>> f
frozenset({1, 2, 3, 4})
>>> f = frozenset( (1, 2, 3, 4, 4) ) # Преобразуем кортеж
>>> f
frozenset({1, 2, 3, 4})

    Множества frozenset поддерживают операторы, которые не изменяют само множество, а также следующие методы: сору(), difference(), intersection(), issubset(), issuperset(), symmetric_difference() и union().

    На следующем шаге мы рассмотрим диапазоны.




Предыдущий шаг Содержание Следующий шаг