慕课网python学习笔记:2.迭代对象

本文介绍了Python中的迭代器和可迭代对象的概念。迭代器是一个表示数据流的对象,通过调用__next__()方法获取数据,直到引发StopIteration异常表示耗尽。可迭代对象能一次返回一个成员,如列表、字典等。文章还讨论了如何判断对象是否为可迭代或迭代器,并介绍了如何实现迭代器与可迭代对象。
摘要由CSDN通过智能技术生成

1.迭代器与可迭代对象

1. 迭代器:
① iterator是一个表示数据流的对象。重复调用迭代器的__next__()方法(或将迭代器传递给内置函数next())将返回数据流中的连续项。当没有数据可访问时,将会引发一个StopIteration异常。这个时候,迭代器对象已耗尽,后续任何对__next__()方法的进一步调用都将会再次引发StopIteration异常。
② 迭代器需要有一个__iter__()方法,iter()方法返回迭代器对象本身,所以任何一个迭代器都是可迭代对象,并且可以在在大部分接受可迭代对象的地方使用。一个值得注意的列外是尝试多次迭代传递的代码。

2. 迭代对象
iterable是一个能够一次返回其一个成员的对象。可迭代对象包括所有的序列类型(如list, str, tuple)、一些非序列数据类型(如dict, file objects )、所有定义了__iter__()方法的类对象、所有定义了实现序列语义的__getitem__()方法的类对象。

2.迭代判断方法

1.判断是不是可以迭代,用Iterable

from collections import Iterable
isinstance({}, Iterable) --> True
isinstance((), Iterable) --> True
isinstance(100, Iterable) --> False

2.判断是不是迭代器,用Iterator

from
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值