一、列表生成式
* 即List Comprehensions,python内置非常简单却强大的可以用来创建list的生成式(也可set, dict)
* 功能主要是可以使列表的遍历更加方便,简洁。
* 公式:表达式 + for循环范围 + (if 条件式)
下面几种表达方式可以看出这个生成式的优点
lst1 = []
for i in range(1,10):
if i % 2 == 0:
lst1.append(i * i)
print('lst1 = :', lst1)
lst2 = [i*i for i in range(1,10) if i % 2 == 0]
print('lst2 = :', lst2)
#Result:
lst1 = : [4, 16, 36, 64]
lst2 = : [4, 16, 36, 64]
以上两种写法实现的的效果是一样的, 但后一种无疑更加简洁。
再来看下面这种:
lst3 = [i + j + k for i in 'ABC' for j in '123' for k in 'abc']
print('lst3 =', lst3)
#Results:
lst3 = ['A1a', 'A1b