快捷搜索: 王者荣耀 脱发

Python中可迭代对象是什么?

Python中可迭代对象(Iterable)并不是指某种具体的数据类型,它是指存储了元素的一个容器对象,且容器中的元素可以通过__iter__( )方法或__getitem__( )方法访问。

  1. __iter__方法的作用是让对象可以用for … in循环遍历,getitem( )方法是让对象可以通过“实例名[index]”的方式访问实例中的元素。老猿认为这两个方法的目的是Python实现一个通用的外部可以访问可迭代对象内部数据的接口。
  2. 一个可迭代对象是不能独立进行迭代的,Python中,迭代是通过for … in来完成的。凡是可迭代对象都可以直接用for… in…循环访问,这个语句其实做了两件事:第一件事是调用__iter__()获得一个可迭代器,第二件事是循环调用__next__()。
  3. 常见的可迭代对象包括: a) 集合数据类型,如list、tuple、dict、set、str等; b) 生成器(generator),包括生成器和带yield的生成器函数(generator function),下节专门介绍。
  4. 如何判断一个对象是可迭代对象呢?可以通过collections模块的Iterable类型判断,具体判断方法如下: from collections import Iterable #导入Iterable 模块 isinstance(变量, Iterable) #判断一个变量是否为可迭代对象返回True表明是可迭代对象

具体相关知识可以参考

经验分享 程序员 微信小程序 职场和发展