标签:返回 size 函数 dem pytho 函数调用 生成 print span
一、可迭代对象与迭代器
1.可以使用for循环的对象就是可迭代对象,例如list,tuple,dict,字符串等
可以使用isinstance(对象,iterable)语句进行判断
2.可以被next()函数调用,不断返回下一个值的对象叫做迭代器
generator(生成器)都是iterator(迭代器)
可以使用isinstance(对象,iterator)语句进行判断
二、生成器
类似于一种算法,即边循环边计算
常用生成方法:1.tuple生成式:例如 g = (x * 3 for x in range(10))
2.把循环中的print改为yield,如:
demo1:斐波那契数列
def fib(max):
n, a, b = 0, 0, 1
while n < max:
yield b
a, b = b, a + b
n = n + 1
demo2:杨辉三角
def triangles():
l = [1]
i = 1
while True:
yield l
l = [1]+ [l[i-1] + l[i] for i in range(1,i)]+[1]
i += 1
#另一种方式
#i = len(l)
#l = [1]+ [l[i-1] + l[i] for i in range(1,i)]+[1]
tri = triangles()
n = 0
while n < 10:
print(next(tri))
n += 1
标签:返回 size 函数 dem pytho 函数调用 生成 print span
原文地址:https://www.cnblogs.com/dalun101/p/9365420.html