Абстракция множества Python

Введение

Set Comprehension - Абстракция множеств.

Похоже на List Comprehension но создаёт не список а множество.

Базовый синтаксис

Вместо того, чтобы создавать пустое множество и добавлять каждый элемент в конец, вы просто определяете множество и его содержимое одновременно, следуя этому формату:

new_set = {expression for member in iterable}

{ expr(item) for item in iterable }

Пример

>>> from math import factorial >>> s = {len(str(factorial(x))) for x in range(20)} >>> type(s)

<class 'set'>

>>> print(s)

{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18}

Изображение баннера

Несколько источников/условий

# Multi-input Set Comprehension c = {x * y for x in range(5) for y in range(5)} print(c)

{0, 1, 2, 3, 4, 6, 8, 9, 12, 16}

Автор статьи: Андрей Олегович