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

yipeiwu_com6年前Python基础

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

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

rg = range(100)

for i in rg:

print(i)

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


rg = range(100)

rg_iter = iter(rg)

print(rg_iter)

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

rg = range(100)

rg_iter = iter(rg)

for i in rg_iter:

print(i)

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

rg = range(100)

rg_iter = iter(rg)

print(rg_iter.next())

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

rg = range(100)

rg_iter = iter(rg)

print(rg_iter.__next__())

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

rg = range(100)

rg_iter = iter(rg)

print(rg_iter.__next__())

print(rg_iter.__next__())

print(rg_iter.__next__())

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

相关文章

详解Python多线程

详解Python多线程

本文实例为大家解析了Python多线程,供大家参考,具体内容如下 1、多线程的理解 多进程和多线程都可以执行多个任务,线程是进程的一部分。线程的特点是线程之间可以共享内存和变量,资源消耗...

PyCharm代码整体缩进,反向缩进的方法

如下所示: 整体缩进:鼠标拉选住代码块,按下tab键。 反向缩进:鼠标拉选住代码块,按下tab+shift键。 以上这篇PyCharm代码整体缩进,反向缩进的方法就是小编分享给大家的全部...

Python中lambda的用法及其与def的区别解析

python中的lambda通常是用来在python中创建匿名函数的,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python中的lambda还有如下几点和def不一样...

python实现文件的分割与合并

使用Python来进行文件的分割与合并是非常简单的。 python代码如下: splitFile--将文件分割成大小为chunksize的块; mergeFile--将众多文件块合并成原...

python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)

复制代码 代码如下:#-*- coding:utf-8 -*- from win32com.client import Dispatch import time def start_of...