列表生成器是一种简化的循环语句
例如我们生成一个列表
list(range(1,21)) : //生成一个1-20的列表
但是如果我们要生成一个1*1 2*2....20*20的列表 我们需要用一个for循环
>>> L = []
>>> for i in range(1,11):
... L.append(i * i)
...
>>> L
使用这种方法过于繁琐,我们可以使用列表生成器快速的生成
[x * x for x in range(1,11)] for 循环后面可以跟if条件判断语句
[x * x for x in range(1,11) if x %2==0] 这样我们会列出偶数的平方
也可以使用双层循环来实现两组字符串的全循环序列
>>> [x + y for x in 'abc' for y in 'xyz']
['ax', 'ay', 'az', 'bx', 'by', 'bz', 'cx', 'cy', 'cz']
也可以使用列表生成器,迭代字典的key,value
>>> d = {'x':'A','y':'B','z':'C'}
>>> d
{'x': 'A', 'y': 'B', 'z': 'C'}
>>> [k + '=' + v for k,v in d.items()]
['x=A', 'y=B', 'z=C']