list生成式
1.list生成式的创建
(1)语句中把要生成的元素放在前面,后面加上for循环语句,判断条件语句。
# -*- coding: UTF-8 -*-
lsit1=[x + x for x in range(1, 5)]
print(lsit1)
输出:
[2, 4, 6, 8]
生成器
在python中,使用yield的函数被称为生成器。生成器是一个返回迭代器的函数,只能用于迭代操作。
1.生成器的创建
(1)最简单的方法就是将[]改为()。
# -*- coding: UTF-8 -*-
lsit1=(x + x for x in range(1, 5))
print(lsit1)
输出:<generator object <genexpr> at 0x000002B30B34B5C8>
2.以函数的形式实现生成器
#打印杨辉三角
# -*- coding: UTF-8 -*-
def one(n):
L=[1]
while True:
yield L
L.append(0)
L = [L[i-1]+L[i] for i in range(len(L))]
n = 0
for t in one(5):
print(t)
n=n+1
if n==5:
break