`

8.迭代器和列表解析

 
阅读更多

In [1]: myTuple=('123','xsd','zsdf')

In [2]: i=iter(myTuple)

In [3]: i.next()
Out[3]: '123'

In [4]: i.next()
Out[4]: 'xsd'

In [5]: i.next()
Out[5]: 'zsdf'

In [6]: i.next()
---------------------------------------------------------------------------
StopIteration                             Traceback (most recent call last)
C:\Users\bill\<ipython-input-6-e590fe0d22f8> in <module>()
----> 1 i.next()

StopIteration:

 

迭代器就是有一个next()方法的对象 ,像上述的一样。

列表迭代:

Out[10]: [12, 23, 34, 56]

In [11]: for j in i:
   ....:     print j
   ....:
12
23
34
56

 字典迭代:字典的迭代器会迭代字典所有的key,即 

In [12]: for eachKey in Dict.keys()
In [13]: for eachKey in Dict

 上述2种方式等价 

字典迭代还有其他方式 :

In [16]: for i in myDict.itervalues():
   ....:     print i
   ....:
23
123
sdfhsf

In [17]: for i in myDict.iteritems():
   ....:     print i
   ....:
('sdf', 23)
('123', 123)
('sdsf', 'sdfhsf')

In [18]: for i in myDict.iterkeys():
   ....:     print i
   ....:
sdf
123
sdsf

 文件迭代器会自动跳用readline()方法,循环所有行。

 

 

 

列表解析:

 

分享到:
评论

相关推荐

    30 迭代器和列表解析.mp4

    30 迭代器和列表解析.mp4

    STL迭代器类型

    迭代器类型可以分为五种:输入迭代器、输出迭代器、前向迭代器、双向迭代器和随机访问迭代器。每种迭代器类型都有其特定的功能和用途。 1. 输入迭代器(Input Iterator) 输入迭代器是一种只读的迭代器,用于从...

    java迭代器模式实现正反向遍历

    在给定的代码示例中,通过创建自定义的迭代器类,实现了对包含10个数字的集合进行正向和反向遍历的功能。 ### 核心概念解析 #### 1. 迭代器接口(Iterator) 迭代器接口定义了访问和遍历聚合元素的方法。在这个...

    C++ STL 迭代器 入门

    ### C++ STL 迭代器 入门 ...迭代器是C++标准库中一个重要的组成部分,通过迭代器可以方便地访问和修改容器中的元素。希望本文能够帮助初学者更好地理解和使用迭代器,从而提高编程效率和代码质量。

    设计模式之迭代器模式(新)

    通过理解和应用迭代器模式,开发者可以编写出更易于维护和扩展的代码,同时保持代码的整洁和模块化。在“设计模式之迭代器模式(新)”的学习中,你将能够深入理解这一模式的精髓,并在实际项目中有效利用它。

    CORBA实现迭代器

    在CORBA中,迭代器是一个重要的概念,用于遍历和访问集合对象的元素。在本主题中,我们将深入探讨如何使用CORBA实现迭代器,以及涉及的两种方法:通过IOR文件和命名服务。 首先,我们来看`goldmine.idl`文件。IDL...

    JAVA迭代器模式.pptx

    标题和描述均提到了“JAVA迭代器模式”,这是一个在软件工程和面向对象编程中非常重要的设计模式,尤其在Java语言中被广泛运用。迭代器模式属于行为型模式,它的核心在于提供了一种方法来访问一个聚合对象中各个元素...

    设计模式-迭代器模式

    例如,当需要遍历并处理XML节点时,可以创建一个迭代器来逐个访问和解析节点。同时,由于Swift的`Sequence`和`Iterator`协议的存在,大部分情况下我们并不需要手动实现完整的迭代器模式,而是可以直接利用语言特性...

    迭代器模式

    5. `Client.java`:客户端代码,通常在这里会创建一个聚合对象,然后通过调用其`createIterator()`方法获取迭代器,然后通过迭代器遍历和操作元素。 6. `PayModel.java`:这可能是与迭代器模式无关的类,可能涉及到...

    nanoiterator一个轻量级和高效的迭代器

    **nanoiterator:轻量级与高效迭代器的深入解析** 在JavaScript开发中,迭代器是一种常见且重要的工具,用于遍历可迭代对象,如数组、集合或生成器。`nanoiterator`是一个专为性能和简洁性设计的轻量级迭代器库。它...

    Python迭代器Iterable判断方法解析

    - Python列表生成器迭代器实例解析:展示如何使用列表生成器表达式创建迭代器。 - Python迭代器模块`itertools`使用原理解析:详述`itertools`模块的各种功能和用法。 - Python迭代器常见用法实例分析:提供不同场景...

    Java中Set&List的迭代器实现步骤解析

    Java中Set和List的迭代器实现步骤解析是Java编程语言中一个重要的知识点。迭代器是一种设计模式,用于遍历集合中的元素。在Java中,Set和List是两种常用的集合类型,它们都可以使用迭代器来遍历其元素。 在Java中,...

    PHP设计模式之迭代器模式的深入解析

    本文将深入解析PHP中的迭代器模式,探讨其用法、原理以及涉及到的一些高级特性。 首先,迭代器模式主要包含以下几个角色: 1. 客户端(Client):使用迭代器进行遍历的对象。 2. 迭代器(Iterator):定义访问和...

    Java迭代器模式:遍历集合的优雅之舞

    #### 五、Java迭代器模式示例代码解析 下面是一个简单的Java迭代器模式实现示例: ```java import java.util.ArrayList; import java.util.Iterator; import java.util.List; // 定义集合接口 interface ...

    XMLjiexi.rar_简单 XML 解析

    3. **StAX解析**:Streaming API for XML(StAX)也称为推拉模型,允许程序通过迭代器以流式方式处理XML。这种方式在内存使用和性能上都优于DOM,且提供了更大的灵活性。 在学习XML时,你需要理解XML的语法,如命名...

    Python迭代器iterator生成器generator使用解析

    1. 迭代 根据记录的前面的元素的位置信息 去访问后续的元素的过程 -遍历 迭代 2. 可迭代对象 iterable 如何判断可迭代对象的3种方式 能够被迭代访问的对象 for in ...next(迭代器) ===== 迭代器对象.__

    stl算法中文解析.rar

    有五种类型的迭代器:输入迭代器、输出迭代器、前向迭代器、双向迭代器和随机访问迭代器,每种都有不同的功能和性能特性。 3. 算法(Algorithms):STL包含了大量的通用算法,如排序(sort)、查找(find)、复制...

Global site tag (gtag.js) - Google Analytics