Python 迭代器

迭代器

迭代器是访问集合元素的一种方式。

1. 访问者不需要关心迭代器内部的结构,仅仅是通过__next__()方法不断的去取下个内容。

2. 不能随机访问集合内部的某个值,只能从头到尾依次访问。

3. 访问到一半,不能往回退。

4. 便于循环比较大的数据集合,节省内存。

for 循环就具有迭代器的能力。

它能够从前往后访问数据,依次调用__next__()方法,并且知道应该访问多少次,且不会出现错误。

def xrange(n):
    print("开始执行函数")
    start = 0
    while True:
        if start >= n:
            return
        yield start
        start += 1


# obj = xrange(3)
# n0 = obj.__next__()
# n1 = obj.__next__()
# n2 = obj.__next__()
# print(n0, n1, n2)
for i in xrange(3):
    print(i)
原文地址:https://www.cnblogs.com/xuwenwei/p/14408544.html