python之生成器、迭代器

定义生成器

xrange版本1

生成器函数
def xrange(): print(11) yield 1 print(22) yield 2 print(33) yield 3 #生成器 a = xrange() #进行一次循环,执行print(11),返回yield值 1 ,保留指针位置,函数跳出 ret = a.__next()__

xrnage版本2

def xrang(n):
   start = 0
   while start<n:
        yield start
        start +=1 

obj = xrange(5)
n1 = obj.__next__()
n2 = obj.__next__()
n3 = obj.__next__()
n4 = obj.__next__()
n5 = obj.__next__()

print(n1,n2,n3,n4,n5)

二、迭代器

迭代器,让生成器不断迭代生成

posted on 2016-11-14 11:17  limpidstar  阅读(57)  评论(0)    收藏  举报

导航