4.5.3 集合推导式

集合也有自己的推导式,跟列表推导式类似,只不过将中括号变成大括号,最后生成的是集合。

语法形式:

比较一下语句,看看列表推导式和集合推导式的异同。

不难发现,构建alist和bset的时候,除了中括号和大括号不同以外其他语法均相同,alist生成一个列表,里面的元素是元组(1,2,3,3,2,1,4)中每个元素的2倍,而且元素位置一一对应;blist生成一个集合,里面的元素是元组(1,2,3,3,2,1,4)中每个元素的2倍去掉重复元素后的结果,并且并非与元组的元素位置一一对应。

另外,需要说明的是元组没有推导式。