python_迭代器和生成器

python

迭代器和生成器

1、迭代器

特点:

  1. 访问者不需要关心迭代器内部的结构,仅需通过next()方法不断去取下一个内容
  2. 不能随机访问集合中的某个值 ,只能从头到尾依次访问
  3. 访问到一半时不能往回退
  4. 便于循环比较大的数据集合,节省内存

1 x = [11,22,33,44,55]

2

3 for i in iter(x):

4 print(i)

2、生成器

一个函数调用时返回一个迭代器,那这个函数就叫做生成器(generator);如果函数中包含yield语法,那这个函数就会变成生成器;

 1 def xrange(n):

2 start = 0

3 while True:

4 if start > n:

5 return

6 yield start

7 start += 1

8

9 obj = xrange(5)

10 n1 = obj.__next__()

11 n2 = obj.__next__()

12 n3 = obj.__next__()

13 n4 = obj.__next__()

14 n5 = obj.__next__()

15 n6 = obj.__next__()

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

以上是 python_迭代器和生成器 的全部内容, 来源链接: utcz.com/z/388605.html

回到顶部