python迭代器的使用方法实例

yipeiwu_com7年前Python基础

什么是迭代器?

迭代器是带有next方法的简单对象,当然也要实现__iter__函数。迭代器能在一序列的值上进行迭代,当没有可供迭代时,next方法就会引发StopIteration 的异常。python中有很多的对象都是迭代器,例如:列表,元素,字符串,文件,映射,集合

如何使用迭代器?

1. for 变量 in 可迭代对象

复制代码 代码如下:

    list1 = [1,2,3,4,5]

for ele in list1:
    print ele,

结果为:1 2 3 4 5

2. if 变量 in 可迭代对象

复制代码 代码如下:

list1 = [1,2,3,4,5]
var = 1

if var in list1:
    print 'yes!'
else:
    print 'No'

3. 变量 = iter(可迭代对象)

复制代码 代码如下:

it = iter([1,2,3,4])

print it.next()

print it.next()

print it.next()

结果为:

1
2
3

最后,总结一下:迭代器就是一对象

相关文章

python如何为创建大量实例节省内存

python如何为创建大量实例节省内存,具体内容如下 案例:   某网络游戏中,定义了玩家类Player(id, name, status,....),每有一个在线玩家,在服务器程序内...

Python单例模式的两种实现方法

Python单例模式的两种实现方法 方法一  import threading class Singleton(object): __instance = N...

python和ruby,我选谁?

最近在考虑学习一门后端语言,在ruby和python直接犹豫,然后自己做了一些对比,希望能帮到有同样问题的你。 一、异同对比选择 1、Python和ruby的相同点: •都强...

使用 Python 处理3万多条数据只要几秒钟

使用 Python 处理3万多条数据只要几秒钟

应用场景:工作中经常遇到大量的数据需要整合、去重、按照特定格式导出等情况。如果用 Excel 操作,不仅费时费力,还不准确,有么有更高效的解决方案呢? 本文以17个 txt 文本,3万多...

Django高级编程之自定义Field实现多语言

Django高级编程之自定义Field实现多语言

自定义数据库字段 扩展默认的models.CharField和models.TextField使之成为支持多语言的字段。 可以轻松实现复用,无需配置多余选项 from django....