可迭代对象 迭代器对象 生成器对象

Posted on 2019-04-17 21:44  Max404  阅读(62)  评论(0编辑  收藏  举报
# iterable : 汉语意思:可迭代的;可重复的;迭代的
# 可迭代对象:
# 点语法有(__iter__)方法的 就是  可迭代对象
list = [1,2,3,4,5,6]
list_iter = list.__iter__()
# ----------------------------------------------------------
# 迭代器对象:
# 变量名后面的点语法(有__next__)方法的 就是  迭代器对象
# __next__ 方法一次只能取一个,取完就没了
print(list_iter.__next__()) # 结果 1
print(list_iter.__next__()) # 结果 2
print(list_iter.__next__()) # 结果 3
print(list_iter.__next__()) # 结果 4
print(list_iter.__next__()) # 结果 5
print(list_iter.__next__()) # 结果 6
# ----------------------------------------------------------
# 生成器对象
# 长的像函数,没有return,有yield,就是  生成器对象
# yield:汉语 让步,卡住
def name():
    yield # 下来一个输出一个