python可迭代对象怎么理解

(*-*)浩
(*-*)浩 原创
2019-08-02 10:49:32 10713浏览

什么是可迭代对象?

简单的理解是可以用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可迭代对象怎么理解的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。