列表解析
mlist = [i * 2 for i in range(5)]
print mlist
[0, 2, 4, 6, 8]
列表过滤解析
# 过滤掉列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]中值为奇数的项
lst = [i for i in range(11) if i % 2 == 0]
print lst
[0, 2, 4, 6, 8, 10]
字典解析
# 快速生成值是键二倍的字典
ndict = {x: x*2 for x in range(5)}
print ndict
{0: 0, 1: 2, 2: 4, 3: 6, 4: 8}
集合解析
# 快速生成1-10的集合
nset = {x for x in range(1, 11)}
print nset
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
参考: https://blog.csdn.net/luckytanggu/article/details/53154063