Python集合推导式(set comprehension)提供了一种快速构建集合的简洁方法。基本语法是:
## python www.itzhimei.com 代码
{expression for item in iterable}
这会遍历iterable中的每一项,计算expression的值,然后把结果添加到集合中。
示例:
## python www.itzhimei.com 代码
squares = {x**2 for x in range(10)}
# {0, 1, 4, 9, 16, 25, 36, 49, 64, 81}
even_nums = {x for x in range(10) if x % 2 == 0}
# {0, 2, 4, 6, 8}
names = {'Bob', 'Alice', 'Bob'}
names = {name.lower() for name in names}
# {'alice', 'bob'}
集合推导式遵循集合的特性,元素不重复。它提供了一种简洁高效的方式来初始化集合,可以自动过滤重复元素。与列表推导式类似,但会自动去重。非常实用的语法。