Python Language Définir les compréhensions


Exemple

La compréhension d'ensemble est similaire à la compréhension de liste et du dictionnaire , mais elle produit un ensemble , qui est une collection non ordonnée d'éléments uniques.

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'])

Démo en direct

Gardez à l'esprit que les décors ne sont pas ordonnés. Cela signifie que l'ordre des résultats dans l'ensemble peut différer de celui présenté dans les exemples ci-dessus.

Remarque : La compréhension d'ensemble est disponible depuis python 2.7+, contrairement aux compréhensions de liste, qui ont été ajoutées en 2.0. Dans Python 2.2 à Python 2.6, la fonction set() peut être utilisée avec une expression de générateur pour produire le même résultat:

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