Set Comprehensions

Set comprehensions are similar to list comprehensions, the only difference is the use of braces {} rather than brackets [] and sets can only contain unique values. They are of the form:

my_set = { expression for expression in iterable }
# duplicates are silently ignored

nums = {n for n in [1, 1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9]}
print(nums)

# outputs:

{1, 2, 3, 4, 5, 6, 7, 8, 9}

You can also add an if condition:

my_set = { expression for expression in iterable if condition }
evens = {n for n in range(20) if n % 2 == 0}
print(evens)

# outputs:

{0, 2, 4, 6, 8, 10, 12, 14, 16, 18}

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s