看个例子:
#定义一个列表
l=[1,2,3,4,5]#()用于创建一个list,结果依次返回列表l的元素的平方,返回list
s=[i*i for i inl]#打印列表s
print(s)#()用于创建一个生成器,结果依次返回列表l的元素的平方,返回generator
s1=(i*i for i inl)#以列表形式打印generator的元素值
print(list(s1))#查看s1的类型
print(type(s1))
输出:
[1, 4, 9, 16, 25]
[1, 4, 9, 16, 25]
1、列表生成式即List Comprehensions,如何生成列表:
a=list(range(1,11))print(a)print(type(a))
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2、如果要生成一个[1*1,2*2,......,10*10]的列表:
a=[i*i for i in range(1,11)]print(a)
输出:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
3、根据列表[1*1,2*2,......,10*10],帅选出偶数的平方的一个列表:
a=[i*i for i in range(1,11) if i%2==0]print(a)
输出:[4, 16, 36, 64, 100]
4、使