Python生成一个迭代器的实操方法

时间:2022-10-04 09:18:16

python怎么生成一个迭代器,对于需要处理大型数据来说,迭代器是必不可少的,这样可节省大量内存空间,更加合理操作数据。

Python生成一个迭代器的实操方法

首先我们打开编辑器,这里以sublime text3作为示范,创建一个新的py文档。

Python生成一个迭代器的实操方法

Python生成一个迭代器的实操方法

?
1
2
3
4
5
rg = range(100)
 
for i in rg:
 
print(i)

 

我们知道range可以涵盖比较广的范围,但是如果数据太大的时候,一次性打印会占用比较多内存。

Python生成一个迭代器的实操方法

?
1
2
3
4
5
rg = range(100)
 
rg_iter = iter(rg)
 
print(rg_iter)

 

那么这个时候我们就可以用iter()来创建迭代器。打印一下可以看到迭代器对象。

Python生成一个迭代器的实操方法

?
1
2
3
4
5
6
7
rg = range(100)
 
rg_iter = iter(rg)
 
for i in rg_iter:
 
print(i)

 

同样,我们可以用for循环来进行遍历数据。

Python生成一个迭代器的实操方法

?
1
2
3
4
5
rg = range(100)
 
rg_iter = iter(rg)
 
print(rg_iter.next())

 

我们可以用next()来调用数据,但是这里出错了,是因为python3不能这么书写了。

Python生成一个迭代器的实操方法

?
1
2
3
4
5
rg = range(100)
 
rg_iter = iter(rg)
 
print(rg_iter.__next__())

 

实际上我们需要写__next__(),这是新版本的要求。

Python生成一个迭代器的实操方法

?
1
2
3
4
5
6
7
8
9
rg = range(100)
 
rg_iter = iter(rg)
 
print(rg_iter.__next__())
 
print(rg_iter.__next__())
 
print(rg_iter.__next__())

 

如果我们要调用多个,只需要多次输入__next__()即可。

Python生成一个迭代器的实操方法