37.Python:生成器


# 如何得到自定义的迭代器:
# 在函数内一旦存在yield关键字,调用函数并不会执行函数体代码
# 会返回一个生成器对象,生成器即自定义的迭代器

# def func():
# print('111')
# yield 1
# print('222')
# yield 2
# print('333')
# yield 3
# print('444')
#
#
# g = func()
# print(g)

# 生成器就是迭代器
# g.__iter__()
# g.__next__()

# res1 = g.__next__()
# print(res1)
#
# res2 = g.__next__()
# print(res2)
#
# res3 = g.__next__()
# print(res3)


# 应用案例
def my_range(start, stop, step=1):
print('Start...')
while start < stop:
yield start
start += step
print('End...')


for n in my_range(1, 5, 2):
print(n)
posted @ 2021-06-25 14:29  SEPIA  阅读(44)  评论(0)    收藏  举报