【Python】Python集合推导式是如何实现的?

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'}

集合推导式遵循集合的特性,元素不重复。它提供了一种简洁高效的方式来初始化集合,可以自动过滤重复元素。与列表推导式类似,但会自动去重。非常实用的语法。