原创装载请注明出处:http://agilestyle.iteye.com/blog/2329258
使用isinstance()判断一个对象是否是Iterable对象
# Iterable类型 from collections import Iterable # True print(isinstance([], Iterable)) # True print(isinstance((), Iterable)) # True print(isinstance({}, Iterable)) # True print(isinstance('abc', Iterable)) # True print(isinstance((x for x in range(10)), Iterable)) # False print(isinstance(123, Iterable))
Console Output
使用isinstance()判断一个对象是否是Iterator对象
# Iterator类型 from collections import Iterator # False print(isinstance([], Iterator)) # True print(isinstance(iter([]), Iterator)) # False print(isinstance((), Iterator)) # True print(isinstance(iter(()), Iterator)) # False print(isinstance({}, Iterator)) # True print(isinstance(iter({}), Iterator)) # False print(isinstance('abc', Iterator)) # True print(isinstance(iter('abc'), Iterator)) # True print(isinstance((x for x in range(10)), Iterator)) # False print(isinstance(123, Iterator))
Console Output
凡是可作用于for循环的对象都是Iterable类型;
凡是可作用于next()函数的对象都是Iterator类型,表示一个惰性计算的序列;
集合数据类型如list、dict、str等是Iterable,但不是Iterator,不过可以通过iter()函数获得一个Iterator对象。
Python的for循环本质上就是通过不断调用next()函数实现的
for x in list(range(10)): print(x)
上面的这段代码等价于:
it = iter(list(range(10))) while True: try: x = next(it) print(x) except StopIteration: break
参考资料:
相关推荐
压缩包内的文件“Python 高级编程-[0001]-[Python 迭代器 iteraor].docx”可能是一个详细的教程,涵盖了迭代器的高级用法,可能包括生成器(generator)——这是Python特有的迭代器实现,它们允许我们创建惰性计算的...
python 迭代器与生成器 python 迭代器与生成器 python 迭代器与生成器 python 迭代器与生成器 python 迭代器与生成器
本文将深入探讨Python迭代器的常见用法,结合实例进行分析。 首先,我们需要了解什么是可迭代对象。在Python中,可迭代对象是指那些可以被`for`循环遍历的对象,如列表、元组、字符串等。这些类型的对象具有内置的...
Python 迭代器使用笔记 迭代器是一种访问集合元素的方式,能够记住遍历的位置。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完毕。迭代器只能往前不会后退。 1. 可迭代对象 可迭代对象是指可以...
### Python迭代器与生成器详解 #### 手动创建迭代器 在Python中,迭代器是一种可以记住遍历位置的对象。一个数据集合类的对象通常可以通过迭代器方式访问其内部每一个项目。迭代器有两种基本的方法:`__iter__()` ...
在本课程的"第3章-1 2PYTHON迭代器"中,你将学习到如何创建自定义迭代器,这通常通过定义包含`__iter__()`和`__next__()`方法的类来完成。此外,还可能涉及生成器函数,这是一种特殊的迭代器,它使用`yield`关键字来...
python 迭代器与生成器
python 迭代器与生成器
「Python系列」Python迭代器与生成器
python 迭代器与生成器
Python迭代器 一.迭代器 迭代器指的是迭代取值的工具,迭代是指一个重复的过程,每一次重复都是基于上一次结果而来 迭代提供了一种通用的不依赖索引的迭
python 迭代器与生成器-7.打印学生平均成绩——emm~.py
python 迭代器与生成器-5.字节串和字符串互转——python的函数库 大!.py
Python中的迭代器协议 Python中的迭代器协议是指在Python中实现迭代器的协议,它是Python中的一种内置机制,用于实现可迭代对象的迭代。Iterable对象和Iterator对象是Python中的两个基本概念,Iterable对象是可以...
本文将深入探讨Python迭代器的高级用法,帮助开发者在实际项目中更好地利用这一特性。 首先,我们关注如何跳过迭代器的开头部分。在处理文本数据时,如日志文件,通常会有头部的注释或元信息,我们需要忽略这些内容...
python 迭代器与生成器-4.0取出字符串日期中的月份并加一——明月何时.py
Python迭代器是Python编程语言中一个非常重要的概念,它允许我们遍历任何可迭代对象,如列表、元组、字符串等。迭代器的核心在于它的`__next__()`方法,这个方法在每次调用时返回序列的下一个元素,直到所有元素都被...
python 迭代器与生成器-2.判断是否在列表中——千方百计只为在你心里.py
python 迭代器与生成器-9.两个变量间的逻辑运算——是非,对错?.py