什么是可迭代对象?

2023-05-28 0 631

在Python中,可插值第一类是指能透过循环式结点其大部份原素的第一类。单纯而言,假如两个第一类能采用for循环式展开插值,所以它是可插值的。

常用的可插值第一类主要包括:条目、位元、词典、子集等。除此之外,数组、文件和计算机程序也是可插值的。

简而言之,可插值第一类要满足用户下列前提:

同时实现__iter__()方式:该方式回到两个插值器第一类。插值器第一类能用以出访可插值第一类的原素。同时实现__next__()方式:该方式回到迭代器的下两个原素。假如没更多原素,则引起StopIteration极度。

比如,上面的标识符展现了怎样建立两个可插值的类:

pythonCopy code class MyIterable: def __init__(self): self.data = [1, 2, 3] def __iter__(self): self.index = 0 return self def __next__(self): if self.index >= len(self.data): raise StopIteration value = self.data[self.index] self.index += 1 return value

前述标识符表述了两个MyIterable类,当中__iter__()方式回到两个插值器第一类,next()方式回到下两个原素。那时,他们能采用for循环式结点MyIterable的大部份原素:

pythonCopy code my_iterable = MyIterable() for i in my_iterable: print(i)

这将输入1、2、3,即使MyIterable类表述了它他们的插值器第一类,并同时实现了__next__()方式。

总而言之,可插值第一类是Python中十分关键的两个基本概念,它容许他们随心所欲地结点繁杂的计算机程序,如条目、位元、词典、子集等。为的是使两个第一类可插值,他们须要同时实现__iter__()方式,该方式回到两个插值器第一类,并同时实现__next__()方式来出访每一原素。

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务