Python Language Imposta Comprensioni

Esempio

La comprensione dell'insieme è simile alla comprensione di elenchi e dizionari , ma produce un insieme , che è una collezione non ordinata di elementi unici.

Python 2.x 2.7
# A set containing every value in range(5):
{x for x in range(5)}
# Out: {0, 1, 2, 3, 4}

# A set of even numbers between 1 and 10:
{x for x in range(1, 11) if x % 2 == 0}
# Out: {2, 4, 6, 8, 10}

# Unique alphabetic characters in a string of text:
text = "When in the Course of human events it becomes necessary for one people..."
{ch.lower() for ch in text if ch.isalpha()}
# Out: set(['a', 'c', 'b', 'e', 'f', 'i', 'h', 'm', 'l', 'o',
#           'n', 'p', 's', 'r', 'u', 't', 'w', 'v', 'y'])

Dimostrazione dal vivo

Tieni presente che i set non sono ordinati. Ciò significa che l'ordine dei risultati nell'insieme può essere diverso da quello presentato negli esempi precedenti.

Nota : la comprensione dei set è disponibile da python 2.7+, a differenza delle list comprehensions, che sono state aggiunte in 2.0. In Python 2.2 a Python 2.6, la funzione set() può essere utilizzata con un'espressione generatore per produrre lo stesso risultato:

Python 2.x 2.2
set(x for x in range(5))
# Out: {0, 1, 2, 3, 4}