当前位置 : 主页 > 编程语言 > python >

python可迭代对象怎么理解

来源:互联网 收集:自由互联 发布时间:2021-09-02
什么是可迭代对象? 简单的理解是可以用for循环的对象,就是可迭代对象。比如:list,字符串,dict,元组,生成器等。 具有可迭代的特征。 (推荐学习:Python视频教程) 自定义可迭
什么是可迭代对象?

简单的理解是可以用for循环的对象,就是可迭代对象。比如:list,字符串,dict,元组,生成器等。

具有可迭代的特征。(推荐学习:Python视频教程)

自定义可迭代对象(本质)

语法层面,如果一个对象实现了__iter__方法,那么这个对象就是可迭代对象

判断是否是可迭代对象(Iterable)

通过调用Python内置的isinstance来判断是否是Iterable的实例

In [9]: isinstance([],Iterable)
Out[9]: True

In [10]: isinstance('',Iterable)
Out[10]: True

In [11]: isinstance({},Iterable)
Out[11]: True

In [12]: class MyList(object):
....:     def __init__(self):
....:         self.list = []
....:     def add(self,item):
....:         self.list.append(item)
....:         

In [13]: mylist = MyList()

In [14]: isinstance(mylist,Iterable)
Out[14]: False

通过上面例子可以看出,Python中的内置类型dict,list,str的对象都是可迭代的,我们自定义了一个类MyList,由于这个类没有实现iter方法,所以这个类的实例不是可迭代对象。

更多Python相关技术文章,请访问Python教程栏目进行学习!

以上就是python可迭代对象怎么理解的详细内容,更多请关注自由互联其它相关文章!

网友评论