当前位置:  首页>> 技术小册>> Python合辑9-判断和循环

集合表达式与列表表达式有两处不同:
● 1、集合表达式需要用{}
● 2、集合表达式返回的是集合,所以会对元素去重

  1. In [32]: set1 = {i for i in 'abcdddddd' if i not in 'abc'}
  2. In [33]: set1
  3. Out[33]: {'d'}

可以看到for语句中的字符串原本有很多d,经过条件过滤和集合去重最后只剩下了一个。
当然也可以通过set()方法将一个列表表达式转换为集合的形式。

  1. In [34]: set2 = set([(x,y) for x in range(2) for y in range(2)])
  2. In [35]: set2
  3. Out[35]: {(0, 0), (0, 1), (1, 0), (1, 1)}

该分类下的相关小册推荐: