一、迭代 1.重复 2.下一次重复是基于上一次结果 二、迭代器 python为了提供一种不依赖于索引的迭代方式,python会为一些对象内置__iter__方法,obj.__iter__称为可迭代的对象,obj.__iter__得到的结果就是迭代器,得到的迭代器既有__iter__,也有一个__ne ...
分类:
编程语言 时间:
2017-06-17 22:31:41
阅读次数:
185
迭代给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历称为迭代(Iteration)。在java和C语言中,迭代是通过循环list的下标来完成的,Python中迭代的抽象程度更高,不仅可以迭代list和tuple,而且可以迭代任何可迭代对象,包括我们自己创建... ...
分类:
编程语言 时间:
2017-06-17 12:16:28
阅读次数:
456
索引迭代 一、有序数集,获取value,方法是直接for..in 二、有序数集,同时获取key、balue,方法是使用 enumerate() 函数: >>> L = ['Adam', 'Lisa', 'Bart', 'Paul']>>> for index, name in enumerate(L ...
分类:
编程语言 时间:
2017-06-16 10:07:54
阅读次数:
137
本文源自RQ作者的一篇博文,原文是Iterables vs. Iterators vs. Generators,俺写的这篇文章是按照自己的理解做的参考翻译,算不上是原文的中译版本,推荐阅读原文,谢谢网友指正。 在了解Python的数据结构时,容器(container)、可迭代对象(iterable) ...
分类:
编程语言 时间:
2017-06-09 19:20:33
阅读次数:
304
迭代器 Iterator是迭代器的意思,它的作用是一次产生一个数据项,直到没有为止。这样在 for 循环中就可以对它进行循环处理了。那么它与一般的序列类型(list, tuple等)有什么区别呢?它一次只返回一个数据项,占用更少的内存。但它需要记住当前的状态,以便返回下一数据项。它是一个有着next ...
分类:
编程语言 时间:
2017-06-07 23:15:31
阅读次数:
307
1、迭代器 迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退。另外,迭代器的一大优点是不要求事先准备好整个迭代过程中所有的元素。迭代器仅仅在迭代到某个元素时才计算该元素,而在这之前或 ...
分类:
编程语言 时间:
2017-06-03 00:51:05
阅读次数:
176
迭代器 我们已经知道,可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list、tuple、dict、set、str等; 一类是generator,包括生成器和带yield的generator function。 这些可以直接作用于for循环的对象统称为可迭代对象:Iterab ...
分类:
编程语言 时间:
2017-05-22 23:14:28
阅读次数:
241
Python生成器带有yield的函数在Python中被称之为generator(生成器),用斐波那契数列:deffab(max):
n,a,b=0,0,1
whilen<max:
yieldb
a,b=b,a+b
n=n+1执行:123456789>>>forninfab(5):printn11235简单地讲,yield的作用就是把一个函数变成一个generator,带有yield..
分类:
编程语言 时间:
2017-05-11 22:22:21
阅读次数:
258
Python/迭代器和生成器 一、迭代器 迭代器的特性: 迭代是Python中最强有力的特性之一,可以把迭代看成是一种处理序列中元素的方式。 可以直接作用于for循环的对象统称为可迭代对象(Iterable)。 可以被next()函数调用并不断返回下一个值的对象称为迭代器(Iterator)。 所有 ...
分类:
编程语言 时间:
2017-04-24 15:45:39
阅读次数:
222
迭代器的特点是:惰性求值(Lazyevaluation),即只有当迭代至某个值时,它才会被计算,这个特点使得迭代器特别适合于遍历大文件或无限集合等,因为我们不用一次性将它们存储在内存中。Python内置的itertools模块包含了一系列用来产生不同类型迭代器的函数或类,这些函数的返回..
分类:
编程语言 时间:
2017-04-20 17:34:55
阅读次数:
172