生成器

举例1

def func():    
   print("1--start")    
   print("1-蛋")    
   yield"蛋1"    
   print("2-蛋")    
   yield"蛋2"
   print("取最后一个")  
res = func()           #res是迭代器对象print(next(res))    
print(next(res))       #next(迭代器对象)
print(next())

 

举例2

举例循环10次(python2和python3的区别)

for i in range(1,11)
print(i)       #1-10的打印出来
python2:range(1,5) --->[1,2,3,4]
python3: range(1,5)--->range对象--->生成器--->迭代器
res =range(1,5)
print(res)

 

举例3

自定义range功能,创建一个自定义的生成器

def my_range(start, end, move=1):  
   while start < end:
       yield start
       start += move
       
for line in my_range(1,7,2)
   print(line)

 

posted @ 2019-11-14 15:17  medigrat  阅读(65)  评论(0编辑  收藏  举报