• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
lvcy
博客园    首页    新随笔    联系   管理    订阅  订阅

迭代器

from collections import Iterable,Iterator

 

一、可迭代对象(Iterable):可以直接用于for循环的对象统称为可迭代对象,可以用isinstance()去判断一个对象是否为Interable对象

  1、集合数据类型,如,list、tuple、dict、set、string

  2、是generator,包括生成器和带yield的generator function

  print(isinstance([],Iterable))  返回True

  print(isinstance((x for x in range(10)),Iterable))  True

 

二、迭代器(Iterator):可以被next()函数调用并不断返回下一个值的对象

  不仅可以作用于for循环,还可以被next()函数不断调用并返回下一个值,直到最后抛出StopIteration错误并无法继续返回下一个值

  可以用isinstance()去判断一个对象是否为Interator对象

  print(isinstance([],Interator))  返回False

  print(isinstance((x for x in range(10)),Interator))  True

    

三、装成Iterator对象  iter()

  

 

posted @ 2018-08-01 09:50  lvcy  阅读(73)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3